Start your free trial now, and begin learning software, business and creative skills—anytime, anywhere—with video instruction from recognized industry experts.

Start Your Free Trial Now

Including administration interactivity


Dreamweaver and WordPress: Core Concepts

with Joseph Lowery

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.
Expand all | Collapse all
  1. 4m 7s
    1. Welcome
    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

please wait ...
Watch the Online Video Course Dreamweaver and WordPress: Core Concepts
5h 44m Intermediate May 27, 2010 Updated Oct 23, 2012

Viewers: in countries Watching now:

In this course, author Joseph Lowery shows how to combine the utility of WordPress and the power of Adobe Dreamweaver to transition existing websites to the WordPress platform. The course demonstrates how to create new blog posts and pages, customize WordPress themes, and extend WordPress editable pages from within Dreamweaver. It also covers how to add Spry elements, add and customize plugins, and enhance WordPress-stored content with Dreamweaver's dynamic pages. Plus, a chapter on responsive design shows how you can adapt your layouts for tablets and mobile devices.

Topics include:
  • Using the Dynamically-Related Files feature in Dreamweaver to design WordPress pages
  • Applying WordPress themes
  • Customizing themes
  • Adding Spry widgets
  • Adding WordPress dynamic data
  • Populating the WordPress database
  • Publishing a WordPress site
Dreamweaver WordPress
Joseph Lowery

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.

Find answers to the most frequently asked questions about Dreamweaver and WordPress: Core Concepts .

Expand all | Collapse all
please wait ...
Q: While trying to set up a Dreamweaver site, an error occurs that says Dreamweaver cannot resolve the dynamic files because the site definition is incorrect. What is causing this? This is using WAMP on a Windows 7 computer.
A: When setting up the site in Dreamweaver and creating a local testing server, make sure to point it to the folder in c:/wamp/www/ that is being used for the site. If using the same naming convention as shown in the videos, the server folder should be pointing to C:\wamp\www\explore_ca\ and the Web URL field should read http://localhost/explore_ca/, like the picture here:

Q: How do I set the password for WAMP Server 2?
A: The WAMP server does not include a password for MySQL when first installed. You’ll need to add a password by modifying a configuration text file and set up a password in the MySQL server.
Setting a password on the MySQL server:

  1. From the Start menu, enter CMD to open the command line interface.
  2. Switch to the bin directory of your MySQL folder, installed by WAMP. For version 5.1.36 of MySQL, for example, enter cd c:\wamp\bin\mysql\mysql5.1.36\bin
    Navigate within the WAMP folder installed on your system to find the proper path.
  3.  Enter the following: mysql -u root
  4. The command line for MySQL will open with a mysql prompt like this: mysql>
  5. Enter the following:
    SET PASSWORD for 'root'@'localhost' = PASSWORD('yourPassword');
    - replace 'yourPassword' with the password you want to use. 
  6. Close the CMD window.
Setting the password in the phpMyAdmin config file:
After you change the MySQL password you will have to edit the file. Here's how:
  1. In Windows Explorer, navigate to C:\wamp\apps\phpmyadmin3.2.0.1 (version number may vary). 
  2. Open the file in Dreamweaver or another text editor.
  3. Locate the following line:
    $cfg['Servers'][$i]['password'] = '';
  4. Enter your password between the quotes; make sure the password is the same as the one you set in the MySQL server.
  5. Save the file.
  6. From the system tray icon for WAMP, choose Restart All Services.
  7. To test, choose phpMyAdmin from the WAMP system tray icon.

Q: After creating a template following the instructions in the Chapter 5 video “Creating a page template in Dreamweaver,” I am unable to select the template. In the video, the instructor’s page shows a heading of Template, with a dropdown menu, but my version shows only a dropdown labeled “Attributes,” and the newly created template does not appear. What is causing this issue?
A: This seems to be a bug in WordPress that occurs occasionally. Although a cause has yet to be determined, a possible workaround to get the Template option to appear is switch themes. Switching to the default theme and then back again to Explore_California should reveal the Template option.
Q: While following along with the instructions in the "Setting up a MySQL password for Windows," I encountered this error: MySQL said: "#1045 – Access denied for user ‘root’@’localhost’ (using password: NO)" What is causing this error?
A: This error occurs when trying to enter the MySQL monitor with a password for a user who has not set a password yet. In that case, removing the “-u root” part should resolve the problem.
Q: While following along to the chapter 2 movie "Using dynamically related files," I get an error message that reads: "Dynamically-related files could not be resolved because the site definition is not correct for this server." What is causing this error?
A: This is a known issue with Dreamweaver, and relates to the permalink settings in the WordPress installation. If the permalink setting is set to something other than the default, like “Month & Name,” for example, Dreamweaver is unable to resolve the dynamic files, and the described error will occur. Changing the permalink setting back to Default will clear the error.
Q: I am bit confused as to my need to use MAMP with a WordPress site in Dreamweaver. If I am going to use a separate commercial hosting site as my server, do I still need to use MAMP in my WordPress site?
A: MAMP is installed to provide an easy-to-use development server capable of handling MySQL and PHP on your local computer. It's also possible to set up MySQL and PHP servers separately, but it requires many more steps and is not as "user-friendly" as the described process. Your hosting server will have MySQL/PHP enabled on their servers for the remote live setup, but that doesn't have anything to do with developing and testing pages on your own computer.
Q: I can't find the file named commevents.php in the exercise files. I need it to set up an online database in the last chapter.
A: This is a file you create yourself when you first connect to a database. Refer to the "Adding WordPress dynamic data to pages" video in Chapter 7. commevents.php should appear in the Connections folder once you establish a connection.
Q:  In "Setting up a MySQL password for Windows", I'm getting the error "#1045 - Access denied for user 'root'@'localhost'" when testing the phpMyAdmin.

If I try and re-do the steps, I get the following error "ERROR 1044 (42000): Access denied for user ''@'localhost' to database mysql'" when I try to change the password.
A: This seems to be happening because of the combination of Windows 7 and a
new version of WampServer 2.1. Here's another approach that should work
for the new combination.

Follow these steps instead of the ones using the CMD prompt. (As a bonus, they're much easier!)
  1. Left-click on the WampServer icon tray.
  2. Choose phpMyAdmin.
  3. When the phpMyAdmin page opens in your browser, click the Privileges tab found after the Engines tab.
  4. Locate the line in the User table with "root - localhost - No..." (probably the last one).
  5. Click the Edit icon (the final item in the row).
  6. Scroll down to the Change Password section.
  7. Select Password and enter your password twice. (If you're following the exercises, enter root).
  8. Click Go in the lower-right corner.
Now follow the rest of the steps in "Setting up a MySQL password for Windows" video, starting at the 4:13 mark. This is where you use a text editor to make a change in the PHP file and restart all WampServer services when you're done.
Q:  I want to setup the practice files and site on my localhost, as described; however, I already have my current WordPress site (under development) running on my localhost. How do I run two WordPress sites on my localhost?
A:  You can easily do it by setting up another site in Dreamweaver. Just copy the WordPress files to that folder as described and establish a new database via phpMyAdmin. You can set up as many WordPress sites as you need to. The author has upwards of 80 on his system, all for different clients.
Q: This course was updated on 10/23/2012. What changed?
A: The course was thoroughly revised and uses the most current versions of both programs. We added chapters on responsive design and creating a custom administration panel in WordPress, new movies about concepts and taxonomies, and extended the Spry chapter to include jQuery, among other changes. New movies are indicated by the NEW tag next to the movie name.

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

* Estimated file size

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


You have completed Dreamweaver and WordPress: Core Concepts.

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


Upgrade to View Courses Offline


With our new Desktop App, Annual Premium Members can download courses for Internet-free viewing.

Upgrade Now

After upgrading, download Desktop App Here.

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 ?

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:

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.

Learn more, save more. Upgrade today!

Get our Annual Premium Membership at our best savings yet.

Upgrade to our Annual Premium Membership today and get even more value from your subscription:
  •   Download videos to your device
  •   Access course practice files
  •   Get 12 months for the price of 10

“In a way, I feel like you are rooting for me. Like you are really invested in my experience, and want me to get as much out of these courses as possible this is the best place to start on your journey to learning new material.”— Nadine H.

Start your FREE 10-day trial

Begin learning software, business, and creative skills—anytime,
anywhere—with video instruction from recognized industry experts. provides
Unlimited access to over 4,000 courses—more than 100,000 video tutorials
Expert-led instruction
On-the-go learning. Watch from your computer, tablet, or mobile device. Switch back and forth as you choose.
Start Your FREE Trial Now

A trusted source for knowledge.


We provide training to more than 4 million people, and our members tell us that helps them stay ahead of software updates, pick up brand-new skills, switch careers, land promotions, and explore new hobbies. What can we help you do?

Thanks for signing up.

We’ll send you a confirmation email shortly.

Sign up and receive emails about 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

Sign up and receive emails about 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.