Create An Advanced Theme Options Panel in WordPress

This is the start of [wp]’s second ‘themed week’, which run every first week of the month. Last month we got started with WordPress theme development and this month we’re going to be creating an advanced theme options page.

Creating a WordPress theme options page is something that we’ve touched on before on [wp], and this week we’ll be expanding on what we covered before to create not just a theme options page, but an advanced theme options page; we’ll be creating something that lets users change layouts, hide and display different elements dotted around the theme, enter ad codes, footer text, tracking codes, Feedburner URLs, anything really:

themeoptionsscreen

This is a screen of the options page we’ll be creating over the next couple of days – as you can see, pretty impressive! The plan for the week is as follows:

And that’s pretty much it. Unlike last time there won’t be a free eBook to download at the end of the week, but this is a shorter series at only four days. Throughout the week you’ll be most welcome to ask any questions etc etc through the comments, and I’d ask if you’re going to save the series to any social media site then please save this post. The code for the tutorial series comes from my WordPress theme framework, [b] (that in turn is based on Thematic’s options page).

That’s all the admin stuff out the way, so [s], save this post to Delicious and grab a cup of tea. It’s going to be an interesting week.


27 Comments
Most Voted
Newest Oldest
Inline Feedbacks
View all comments
Umeed Emad
January 19, 2016 1:02 am

checkout this service. If you don’t want to code it yourself.
http://www.peopleperhour.com/hourlie/create-custom-admin-option-panel-for-wordpress-themes/257810

25 WordPress Theme Development Tutorials to Get Started - Rockable Themes
January 28, 2013 12:15 pm

[…] 18. Create An Advanced Theme Options Panel in WordPress […]

100+ Resources for WordPress Theme Developers | E-SEOPRO
November 1, 2011 6:26 pm

[…] Creating An Advanced Options Page in WordPress Part 1, Part 2, Part 3, and Part 4 […]

woodwork course
October 28, 2011 11:16 pm

I would try to follow this series!

Daniel
November 8, 2010 8:06 am

Hi and thanks for this tutorial! Everything works well for me… but when I turn WP_DEBUG on I get the following error message in wp-admin:

Notice: Undefined index: page in C:\Documents and Settings\Daniel\My Documents\Programming\xampp\htdocs\wordpress\wp-content\themes\transparency1.1\library\functions-theme-options.php on line 29

Line 29 in my code is:

if($_GET[‘page’] == basename(__FILE__)) {

Can you help me?

10 Resources to Help You Create a Wordpress Options Page
June 7, 2010 8:28 pm

[…] Create an Advanced Options Page in WordPress […]

100+ Resources for WordPress Theme Developers | BloggingBlogging.com
April 28, 2010 6:05 am

[…] Creating An Advanced Options Page in WordPress Part 1, Part 2, Part 3, and Part 4 […]

zek
April 13, 2010 1:20 am

Hello,
I’m using studiopress lifestyle classic theme. It have option page for the themes. How i can have textarea fill with color code in option page that will changed background color, wrap border color & wrap background color.

Thanks

Basics Of WordPress Theme Design | WPShout.com
April 11, 2010 8:07 pm

[…] are too created from the functions.php file. WPShout has a whole tutorial written on the topic here.Language – the functions.php file lets you set up the option for multi-lingual theming.As the […]

9 Excellent Wordpress Theme Options Page Tutorials | Designer Wall
April 4, 2010 8:19 am

[…] 9. Create An Advanced Options Page in WordPress […]

10+ WordPress Tutorials: How to Create an Options Page for Your WordPress Themes and Frameworks - WPConstructs.com
March 6, 2010 5:39 am

[…] 4. Create An Advanced Options Page in WordPress (part 1) by WPShout […]

Comment Name Violation
March 5, 2010 12:49 pm

Really interesting tutorial. I’ve got it saved.

Thanks also to @davin for the link 😉

Cheers mate.

WordPress Theme Tester, Anyone? | Amor's Personal Website
January 28, 2010 8:55 am

[…] to include Advanced Options Page in a theme, glad I read Alex Denning’s article on how to Create an Advanced Options Page in WordPress. Thank you, thank you! I don’t know if I would be able to make it myself hadn’t I read […]

6 Tips to Take Your WordPress Theme from Good to Great - Fantastic Web Design
December 3, 2009 8:26 am

[…] Create An Advanced Options Page in WordPress […]

10 More Tips To Improve Your WordPress Theme | WPShout.com
December 2, 2009 6:06 pm

[…] page isn’t that hard (and needn’t be hard either) – recently WPShout ran “Create an Advanced Theme Options Page” in which, as you might have guessed, we created an advanced theme options page with options […]

Devin
November 30, 2009 9:01 pm

Nice tutorial here. I noticed in another post that you recommended using Thematic as a framework. If anyone is doing that and wants to save some development time, try checking out the tutorial and source files for creating a theme options panel with Thematic.. You could also look at how to code a logo upload box.
.-= Devin´s last blog ..Using TimThumb with WordPress MU =-.

Devin
December 20, 2010 1:20 am
Reply to  Alex Denning

Hey Alex. Just seeing this comment back to me, almost a year later. I guess there’s always a fine line between plugging your own site and genuinely engaging in the conversation. Thanks for approving it at any rate- didn’t mean to be sleazy about it.

5 Tips for Free Wordpress Theme Authors | Devlounge
November 11, 2009 10:15 pm

[…] People love having options. Make it easy on your users to customize or personalize your Theme by creating and including an Options page. Don’t know where to start? Check out this easy tutorial, or this more advanced one. […]

Cosmin
October 29, 2009 9:29 am

Alex, I haven’t noticed when I first commented, and I really feel the need to ask this.

Regarding the “choose a layout for your blog” option.

In the screenshot, I see you’re using checkboxes and you’re telling the user to only check one – which for us developers totally makes sense and we would never tick two of them.

But for people with no tech skills, wouldn’t it be much accessible to turn those checkboxes into radio buttons (so they really can’t choose 2 options).

What do you say?

Thanks,
Cosmin.
.-= Cosmin´s last blog ..Magazine Style Theme – Arthemia Premium =-.

Il meglio della settimana #33 | BigThink
October 10, 2009 9:03 am

[…] Create An Advanced Options Page in WordPress – 1 – 2 – 3 – 4 Una guida in quattro puntate che vi insegnerà a creare una pagina di opzioni avanzata per il vostro tema WordPress. […]

Ben
October 6, 2009 5:02 pm

Now this is what I’m talking about 🙂

BTW I like the new background you have on the site. Fits a lot better 🙂
.-= Ben´s last blog ..Elemental WordPress theme released =-.

TechSlam
October 6, 2009 9:13 am

As cosmin has said, I would also really appreciate if you create a wonderful pdf regarding the creation of options page. Looking forward for it.
.-= TechSlam´s last blog ..Aslam’s BlogBuzz >>>>> Aslam’sBuzz =-.

Cosmin
October 6, 2009 9:07 am

Looking forward to the series Alex 🙂

Just one small adivce: since the options page is quite complex, you should reconsider offering a pdf for download at the end of the week – I’m sure many will appreciate it 😉

Thanks for your efforts in creating this series.
.-= Cosmin´s last blog ..PSD to WordPress Theme Photoshop Plugin =-.