Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member

Including administration interactivity

From: Dreamweaver and WordPress: Core Concepts

Video: Including administration interactivity

Increasingly, I found clients are asking for more and more control over their website. WordPress gives you the power to expose that control right in its administrative interface of the dashboard. In this lesson, we'll take the sidebar advertisement that was introduced in the previous lesson and extend it so that the client can decide how many ads to show, or whether not to show any ads at all, right from a Custom option in the dashboard. To build a custom interface, we are going to be working in Dreamweaver with two of our roux theme pages, sidebar.php, and functions.php.

Including administration interactivity

Increasingly, I found clients are asking for more and more control over their website. WordPress gives you the power to expose that control right in its administrative interface of the dashboard. In this lesson, we'll take the sidebar advertisement that was introduced in the previous lesson and extend it so that the client can decide how many ads to show, or whether not to show any ads at all, right from a Custom option in the dashboard. To build a custom interface, we are going to be working in Dreamweaver with two of our roux theme pages, sidebar.php, and functions.php.

So I have used a Custom filter to restrict our dynamically related files to those pages as well as the style.css files. Let's start in sidebar.php, and I'll go into Code, so we have a maximum view here. First we are going to put in a PHP code block that will get the options for this specific interactive operation, and we are going to put this code block right in front of our new ad space. So as I said, this is the PHP code block that sets the variable $options= the function get_option(); of course, and the option that we are going to be getting in single quotes is named ('plug-in_options').

WordPress stores a full table of options, everything from the site name to how many posts to show. With this code we are getting some Custom options that we'll create a little later. Next, I am going to add a conditional wrapper around my ad code so that it will be shown if the Select menu that we're inserting into the dashboard shows one or higher; if it shows 0, the ad won't be displayed. Let's scroll down a little bit and then after the Options code block, we'll add another.

And this one is if ($options square bracket'home_page_ads' square bracket >= 1), then finally close the parentheses and leave an open curly brace. If that's all true, then all of this that we have here, starting with the

and ending with the closing of that div will take place. Now let's add the closing part of that wrapper after the ad code, and all we need here is just a closing curly brace.

Now that I have this solid foundation for a conditional ad, I can copy and paste it as many times as I need to, and this fictional scenario. The client has requested that she will be able to display up to three ads. So I am going to copy my ad Code block along with a conditional wrapper. Now that that's selected, let's copy it, and I am just going to add an additional line down below here and paste it in, first one time, and we will change three different values to make it a unique ad.

So the first one we will change is the condition itself, and if the options show two or more, we will be able to show this ad. Now we want to change the id from home_ad_1 to home_ad_2, and we also want to change the dynamic_sidebar from home_ad_1 to home_ad_2. Okay, so you see how this works. Let's go ahead and copy 2 this time and then paste it in and make another change, so we will change the options from 2 to 3, the id from home_ad_2 to the home_ad_3, and then finally, the dynamic_sidebar from home_ad_2 to home_ad_3.

All right, so our work in sidebar.php is actually done, so I am going to Save the page, and let's move onto functions.php, making sure that we are working in the roux functions.php file. Now the first bit of work is going to parallel what we just did in the sidebar. Every potential ad widget we put in the sidebar--and we had three--will need to be registered. And they'll be registered only if the client wants the advertisement there and has selected the appropriate option.

So right after if function exists, we are going to put in our options variable and set that =get_option function with the argument ('plug-in_options') closing off the quotes and parentheses as needed. Add a semicolon at the end, and we are ready to move on. Now we are going to wrap our sidebar_registration with the same PHP if block. So if ($options and then the options we are interested in are the home_page_ads are >= 1, and we will insert an opening curly brace to indicate where we start to do our objects, and now after the double parentheses, semicolon, we put in the closing curly brace.

So if the options are pointing to one or more, we will register this as sidebar. Now we'll do the same copy paste routine as we did on the sidebar of duping the Code block twice more and changing the pertinent values. So let's grab all of that code there. I am just going to create a little bit extra line here to separate these, so it makes it easier to read. Again, we'll need to change three places, first the if options, we'll change that from 1 to 2. Now we are going to change the name, also from 1 to 2, and the id from home_ad_1 to home_ad_2, pretty simple, eh? So let's move on and do the next one.

I'll copy what I just inserted, add another line, and paste my second one in and then change to the 2s to 3. Now let me save my functions.php file before we move on. All of our foundation work is now done, and it's time to add the code that we'll create and insert the new Admin setting page. It will take a fair amount of sophisticated code to pull this off, but I have stored it all as an exercise file page.

Let's open it up, so I can explain how it all works. You'll find that there are five major Code blocks, so I am going to File > Open, navigate to the Desktop where our exercise files are, and open up Chapter 10/10_03, where you'll find the file custom_settings.php. Now we are going to eventually insert all of this code, so I am going to walk through the code on this page, and then we will copy and paste the whole thing over. First, there is the function that creates the theme Options page, and this inserts a menu item into the Admin menu called Advertisements.

You can see the title that's here as the second argument for add_options_page and the final options is the next function that is called build_options_page. Let me scroll down a little bit here, so you see it all. This will create the actual page that is presented in the Dashboard. You can see we're working with standard HTML here. There is a larger div with an id of theme-options-wrap, that's a standard WordPress id, and then within that there is a method div with a class of icon32 and an id of an icon-tools.

Now what this will do is present as Standard WordPress icon on that page so that our page fits in with the rest of the Administrative Dashboard. After that we have regular HTML that sets up a title, Advertisements, puts in a little bit of descriptive text as to what you should do, set the number of ads in the sidebar and a form, and within that form are some specific PHP code blocks that will bring in the setting fields that we are about to define. These setting fields will be a label and a select menu. After that is the Submit button that you see here, and as you can see, the value is another PHP code block that gives the title for the button Save Changes, all very familiar interface elements in WordPress.

Let's move on to the next code block which has the responsibility of initializing different sections of the page, including the form elements. Following that are two small functions that validate the setting and set up the section for any check boxes. We'll notice there is no functionality here, because we're not using check boxes. You do need to include this, however, to make the form work properly. The final function sets up the select menu specifically, and here you can see on line 43 is an array, and these are the actual values that will be displayed in the select element, starting with 0 and going up to 3.

In the next line, line 44, writes in the HTML code for the select list, then there's a loop that will go through each of the items that are in the array and determine whether they are selected or not, and that's all there is. So I'm going to go ahead and do a Command+A to select everything and then Command+C to copy it. Now let's go over to our index.php file, and I am going to scroll to the top of the page and paste it in there as a separate code block. Okay.

Let's save this page and head over to the Dashboard to see how it works. Back at the Dashboard, all you need to do is Refresh the page. Once it's refreshed, let's look under Settings, and now you see a new entry all the way at the bottom called Advertisements, click that, and there's our Advertisements page with the Tool icon I was referring to earlier, a little bit of descriptive text, here is the label for the field, Page Ads, however many do you want. So the default setting is 0. Let's go to our site and see if there are any ads or not.

So I'll click on that, Refresh the page, and then scroll down, no Advertisements. All right, let's head back, now let's add our first advertisement and Save the Changes. Let's check out the site, and there is the Advertisement that we had put in before. Let's try one more time. This time let's go up to three advertisements, Save the Changes, and visit our site, and there is our Sharp Art Supplies and two placeholder advertisements. Now let's go to the Dashboard, into our Widgets area, and here you see the additional two widgets available to the client.

Now the client at this point could expand Home Ad Space 2, drag them Image Widget, and choose another advertisement for that particular space, and the ads will be good to go. This lesson demonstrates the flexibility of extending and customizing the WordPress Dashboard. You know that saying, your only limit is your imagination? Well, it pretty much is with Dreamweaver and WordPress.

Show transcript

This video is part of

Image for Dreamweaver and WordPress: Core Concepts
Dreamweaver and WordPress: Core Concepts

55 video lessons · 51322 viewers

Joseph Lowery
Author

 
Expand all | Collapse all
  1. 4m 7s
    1. Welcome
      58s
    2. Using the exercise files
      1m 54s
    3. A word about updates
      1m 15s
  2. 15m 28s
    1. Overview
      1m 51s
    2. Creating the database and the initial site
      3m 45s
    3. Configuring WordPress
      5m 54s
    4. Establishing a Dreamweaver site
      3m 58s
  3. 20m 18s
    1. Accessing dynamically related files
      4m 12s
    2. Filtering files
      4m 20s
    3. Following links
      4m 15s
    4. Employing Live Code
      2m 54s
    5. Enabling site-specific code hinting
      4m 37s
  4. 21m 8s
    1. Adding blog posts
      4m 55s
    2. Editing blog posts
      3m 20s
    3. Adding new pages
      2m 59s
    4. Including images
      6m 59s
    5. Adding videos to posts
      2m 55s
  5. 18m 12s
    1. Understanding WordPress structure
      3m 52s
    2. Activating a theme
      7m 21s
    3. Setting up a child theme
      6m 59s
  6. 1h 29m
    1. Updating the page structure and the background
      12m 53s
    2. Working with web fonts
      4m 3s
    3. Styling a header
      11m 48s
    4. Adding header functions
      7m 40s
    5. Setting up content columns
      10m 9s
    6. Changing the main content
      5m 17s
    7. Managing the content code
      4m 48s
    8. Customizing the sidebar
      10m 32s
    9. Styling search
      7m 8s
    10. Working with search text
      5m 49s
    11. Integrating the footer
      9m 40s
  7. 27m 18s
    1. Setting up media queries
      6m 12s
    2. Customizing for tablets
      12m 19s
    3. Building smartphone layouts
      8m 47s
  8. 23m 28s
    1. Working with categories and posts
      5m 31s
    2. Developing category-driven pages
      11m 22s
    3. Changing headers by category
      6m 35s
  9. 36m 32s
    1. Adding Spry accordion panels
      17m 44s
    2. Working with Spry form validation
      11m 56s
    3. Integrating jQuery functionality
      6m 52s
  10. 11m 7s
    1. Understanding WordPress plugins
      6m 20s
    2. Styling plugin output
      4m 47s
  11. 25m 44s
    1. Customizing the Dashboard
      6m 52s
    2. Working with WordPress functions
      8m 7s
    3. Including administration interactivity
      10m 45s
  12. 13m 10s
    1. Setting up the data in WordPress
      2m 17s
    2. Adding dynamic data from WordPress to your web pages
      10m 53s
  13. 11m 38s
    1. Modifying general settings
      4m 12s
    2. Setting up users
      3m 11s
    3. Restricting access to specific WordPress pages
      4m 15s
  14. 26m 38s
    1. Exporting and importing WordPress files
      7m 9s
    2. Backing up and restoring the database
      8m 10s
    3. Transferring files
      6m 3s
    4. Testing and fine-tuning
      5m 16s
  15. 18s
    1. Next steps
      18s

Start learning today

Get unlimited access to all courses for just $25/month.

Become a member
Sometimes @lynda teaches me how to use a program and sometimes Lynda.com changes my life forever. @JosefShutter
@lynda lynda.com is an absolute life saver when it comes to learning todays software. Definitely recommend it! #higherlearning @Michael_Caraway
@lynda The best thing online! Your database of courses is great! To the mark and very helpful. Thanks! @ru22more
Got to create something yesterday I never thought I could do. #thanks @lynda @Ngventurella
I really do love @lynda as a learning platform. Never stop learning and developing, it’s probably our greatest gift as a species! @soundslikedavid
@lynda just subscribed to lynda.com all I can say its brilliant join now trust me @ButchSamurai
@lynda is an awesome resource. The membership is priceless if you take advantage of it. @diabetic_techie
One of the best decision I made this year. Buy a 1yr subscription to @lynda @cybercaptive
guys lynda.com (@lynda) is the best. So far I’ve learned Java, principles of OO programming, and now learning about MS project @lucasmitchell
Signed back up to @lynda dot com. I’ve missed it!! Proper geeking out right now! #timetolearn #geek @JayGodbold

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Join now "Already a member? Log in

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed Dreamweaver and WordPress: Core Concepts.

Return to your organization's learning portal to continue training, or close this page.


OK
Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Are you sure you want to delete this note?

No

Your file was successfully uploaded.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

  • new course releases
  • newsletter
  • general communications
  • special notices

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

  • new course releases
  • newsletter
  • general communications
  • special notices

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.