Options Framework Theme

The Options Framework Theme has all the code included to build a out a full featured options panel. It’s a bundled version of the Options Framework Plugin for those folks who want to build the options directly into the theme (rather than relying on a plugin).

Available Options

  • text
  • textarea
  • checkbox
  • select
  • radio
  • upload (an image uploader)
  • images (use images instead of radio buttons)
  • background (a set of options to define a background)
  • multicheck
  • color (a jquery color picker)
  • typography (a set of options to define typography)
  • editor


Copy the “inc” directory, options.php, and the code snippet in functions.php from the “Options Framework Theme” into the theme of your choice. Hack away. You can also watch the video above to see how it is done.

When to Use Theme Version vs. Plugin Version

The code is 99% the same between the plugin and theme version. If you can do what you need with the plugin version, I think that’s the best route. If you find that you need to make significant modifications that aren’t possible with the plugin, go ahead and use the theme version.

Change the Menu Location

It’s highly recommended that you leave theme options under the “Appearance” menu where users expect them.

But, if you do decide to change the menu location it will break the media uploader. This is because the media uploader scripts are enqueued on $of_page= ‘appearance_page_options-framework’ in options-medialibrary-uploader.php. If you change the name or location of the menu, you’ll need to update the hook to be accurate, e.g. $of_page= ‘toplevel_page_options-framework’ and those scripts will load properly again.

Sanitization Filters

If you’re interested in how the options data is verified, or if you’re wondering why your script and embed tags are stripped out in the Options Framework, read this post.

Can I Use This Code in Commercial Themes

Yes! This code is 100% GPL. Please read the included license for more details.

Development Version on GitHub

The development version of the Options Framework Theme is available on GitHub.

Additional Tutorials

Purchase the Options Framework Theme Kit

The Options Framework Theme Kit, which includes the latest released version of the Options Framework Theme plus a collection of demonstrations themes is available for $30. You’ll be able to download updates and get new child themes as they are released.

If you only plan on using the plugin version of the Options Framework, the Options Kit might be what you’re looking for.

718 thoughts on “Options Framework Theme

  1. Kathy wrote:

    Hi Devin,

    Thanks for creating the Options Framework Theme. It made adding an options panel very easy for me.

    I’d like to make the panel available to Editor level users but keep it under Appearance. I see where you set a value of ‘edit_theme_options’ for $capability in options-framework.php.

    Can I just change the value of the $capability variable at line 106 to something like ‘edit_pages’? Is that the only place I need to change it to insure everything continues to work as it should?



      • Kathy Sautter wrote:

        Thanks, Devin.

        I wanted a way I could change it for all sites using the theme. I didn’t want to have to change the permissions of users on all of the sites using the theme. I’ll just make a note to make the change to any upgrades to the framework.

  2. Kathy wrote:

    Me again…

    I found the other two references to ‘edit_theme_options’ and changed them to ‘edit_pages’ in options-framework.php and it works fine.

    Thanks again for this great tool.

  3. fukr wrote:

    Hi Devin,

    This is a great theme. I have one problem when configuring it: i used the textarea to store scripts, ie Adsense, Google Analytics, etc, but it only displayed the script itself on the page. Also, if i try to paste scripts as ” into the textarea and hit ‘save options’ the ” and ” codes are just gone.Any solution to this? or I am not correctly implementating this?


  4. Jomar wrote:

    Hello Devin, this is a great plugin

    I just want to ask, is there a way for the theme options page to require a field? ex. I have a text field and I require that the user put a value and not allow users to input empty strings. How will I be able to acheive that? or is it possible?


    More Power

    • Devin wrote:

      You could hook in some javascript to do front end validation. There is also a hook that runs right before the options are processed that you could use to throw an error.

  5. Pingback: Cherry WordPress Theme Framework Review | Theme Lab

  6. I am trying to modify the Theme Options Panel to include an additional “Feature Page” on the Home page. It currently has 3 and I need a 4th. How would I do that?

    • Devin wrote:


  7. Gil wrote:

    Hi Devin
    Great Great Work!!
    I would like to know if there is an option of exporting the theme options settings or it is stored in the database regularly and it is unnecessary to do when moving a site to another server

    Thanks in advance!

    • Devin wrote:

      Settings are stored in the database. If you export your entire database it should be unncessary.

      • Gil wrote:

        Great. Thanks a lot!

      • Bryan Abueva wrote:

        Is there is a way to backup the content of the options framework and upload it once you’ve change your server?

      • Gil wrote:

        Hi Devin
        I tried to import the database twice and in both actions it didn’t import the options panel data. I simply exported the database, did “search and replace” replacing the old domain with a new domain (using notepad ++) and imported the database to a new location. everything worked well except for the options panel data which I had to load the data manually. any clue why it happens to me? does it have anything to do with the “search and replace” action?


      • Radley wrote:

        Gil, I’m assuming the options framework settings are serialized by PHP before being stored in the database. You won’t be able to do a simple search and replace so easily (I believe you have to update an integer referring to the length of the string, but I’m not 100% positive).

        You can try the following serialized search & replace tool:


        I use it when launching a website from a dev URL like “mysite.devsite.com” to “mysite.com”. Should work.

    • Gil wrote:

      Hi Radley
      I thought it is simpler as Devin commented above that it is stored regularly in the database but I will definitely try your solution.

      Thanks a lot

      • Rad wrote:

        I believe it is simple – until you have to modify that data via search and replace. If you don’t do the search and replace I bet it would work.

        Might be something else though, but I’m pretty sure that’s the issue. If you change serialized data and it can’t be unserialized properly, it doesn’t seem to import any of the data (just false for the entire serialized object)

  8. Jon-Michael wrote:


    I really like your options framework and is currently using it. I just had a little problem, you see i’m using less css for wordpress (https://github.com/sanchothefat/wp-less).

    I’ve successfully parsed some variables from the options to my LESS files. My problem is that I have to manually compile the less files everytime I click on Save Options. I really want to automatically run a compile everytime I click the Save Options. Is it possible to execute a function when saving? How should I do this? Thanks.

    • Devin wrote:

      There’s a hook for optionsframework_after_validate. That’s how the settings notice is displayed:
      add_action( ‘optionsframework_after_validate’, ‘optionsframework_save_options_notice’ );

  9. Christina wrote:

    Hi there, I’m excited about your Options Framework and am wanting to install it in a custom theme I’m coding and build it out. But I can’t seem to get it to work… My theme has no other theme options panels included.

    I put the inc folder, options file, and copied the code from functions.php into my functions.php file. I’m using a child theme so I placed require_once ( get_stylesheet_directory() . ‘/options.php’ ); into the child theme functions.php file too.

    If I use the parent theme, “Theme Options” doesn’t show. If I activate the child theme, everything goes blank. I’m not a PHP programmer, just decent at copy-and-paste. Any possibility I can get help activating this correctly? My intention is to use the dev version in my custom theme and build it out.

    My structure is as follows:

    /furryfriends/functions.php (with the options function code at the bottom)


    with require_once ( get_stylesheet_directory() . ‘/options.php’ ); in it

    • Devin wrote:

      All the options panel code is in the child theme? Use this in functions.php:

      define( ‘OPTIONS_FRAMEWORK_DIRECTORY’, get_stylesheet_directory_uri() . ‘/inc/’ );
      require_once dirname( __FILE__ ) . ‘/inc/options-framework.php’;

  10. Ralph wrote:

    Hi Devin,

    Thanks for the great plugin you offer here! I have a small question: is there some kind of overview of existing themes that are built on the options framework?

    Thanks for your response!

    • Devin wrote:

      Organic Themes, Mint Themes, WP Explorer, and Press75 just to name a few. There’s also a ton on ThemeForest.

      • viv maxwell wrote:

        I already had commented about licensing and including this option framework.Here you have mentioned some wordpress theme authors, In the same way I want to include it in my wordpress theme( selling product ). so now i need to purchase it with $30 and including it in my wordpress theme ,is it right?

      • Devin wrote:

        Hi Viv. If you’re including it in a commercial theme I would definitely appreciate the purchase- though it’s not required.

  11. Radley wrote:

    This is a great plugin! It makes It has saved me quite a bit of time compared to manually writing a plugin for individual websites which have settings that a non-programmer would need to change (The images in a slider, or the text in a generated email, for example).

    There are a few things that are kind of odd though. Why is there HTML sanatization for the “desc” field? I can’t use linebreaks or elements in there? What’s the point of sanitizing a hard-coded PHP file? That sanatization should be removed, unless you had a good reason for doing it. It’s also very odd that I can’t use ID or class elements in the desc field, which kind of limits the possibilities.

    It would also be great if the “Image” field would use the wordpress attachment instead of just the full-res image URL. I’ve got a 3000×2000+ image uploaded here, and it downloads the full thing inside the theme options menu (although resized in the browser to 334×255). You should add an “attachment” field as an alternative, which returns the attachment instead of just the URL.

    The last issue I’ve had is the tinymce field. This isn’t the default “wp_editor()” version… When you select a link, it has TinyMCE’s default theme for selecting a URL – rather than WordPress’s very useful URL/Title menu with a “Select an existing page…” area below. There are some other things missing from the tinymce editor as well. I have a feeling this is your own TinyMCE code, rather than using the provided “wp_editor()” function. I think this should be fixed, or at least improved!

    But anyway, those are just some minor things. The plugin is quite easy to use and is working well so far. Minor issues aside, it works great and has a lot of potential. Thanks for the plugin!

    • Devin wrote:

      Hi Radley. Glad you like the plugin.

      You can easily change sanitization items if you feel it’s too much: http://wptheming.com/2011/05/options-framework-0-6/

      Image attachment IDS would be nice. Will be added in a later version, but some legacy issues to deal with: https://github.com/devinsays/options-framework-plugin/issues/138

      If you have questions about how the editor was implemented, take a look at the code. :) If you have a better method I’d love to help test it out and get it live: https://github.com/devinsays/options-framework-plugin/pulls

      • Radley wrote:

        Thanks for the reply Devin. I didn’t think to look for customizing the sanization filters.

        Although I still think that they should be lowered out of the box, or at least have a variation of the “textarea” field which supports HTML (and JS). As a theme option – something that might be used on a variety of sites with different variations of data – one of the prime features I would imagine would be tracking and conversion codes.

        In a textarea field, tags seem to be removed. In a tinymce field, they work, but sometimes it creates additional tags (which will invalidate code that is inserted into , for Chrome it actually pushes it to the body).

        Not familiar with github and pull requests, but I might look into it in my spare time.

  12. Horus Acosta wrote:

    hi, great framework i was looking for this for a long time. one question.
    how can i group element within the options
    tab=basic settings
    option 1
    Input Text
    and so on

    • Devin wrote:

      You can use the “info” option to output different headers. You can hook another stylesheet in if you want to specifically style different groups.

      • Horus Acosta wrote:

        im sorry devin but info option? how exactly would i do that. just give me a hint :D im not an expert but if you give me a lil more info ill get it done.
        thanks in advance.

  13. Tim wrote:

    Dear Devin,

    I have a question.
    I’d like to use the image selector in the following way.

    When an image is selected, it would automatically open additional options based on the image selection.

    For example: I have created 5 different landing pages for a wordpress theme.
    I am using the image selector to show the client what the different templates look like.

    The client selects an image and clicks save. Then goes to the appropriate tab to work on that templates features.

    Rather than listing all the template options, in single tabs, I want to be able to click on a template image, then have the options show up below the image that was selected.

    Is this possible?
    Thanks for all your help.

    • Devin wrote:

      Yes, you can hook in an additional stylesheet and have certain options display:none by default. Then you can hook in an additional javascript file, and when a certain image option is selected, you reveal the other options associated with it. You’d have to write this code yourself- but you can look at the “hidden checkbox” option in Options Check for an idea of how this is done.

  14. Mick wrote:

    How to translate this? I created a .mo and .po file, but don’t know where to put and which file name..

    • Michael wrote:

      Mick I just put a “languages” folder in my theme and put the translation files there and it works just fine.

  15. Stuart Wider wrote:

    Hi Devin,
    I got the theme options kit and have been having a good play with it :)
    Nice job. Well done.

    I did spot a couple of things though when trying to retrieve options (unless I’m missing something… which is entirely possible) ;)

    I noticed optionsframework_option_name(); was commented out on line 75 of options-framework.php, so it seems it never gets called and therefore can never set the specific theme options.. unless that line is then uncommented.

    I also did have trouble retrieving options using of_get_option(),
    and tracked it down to line 395 in options-framework.php where it reads
    $config = get_option( ‘options-framework’ );
    but I adjusted it to..
    $config = get_option( ‘optionsframework’ );
    and all then worked.

  16. suraj wrote:

    Option framework plugin does not have support for wp 3.7.x.
    and my theme doesnt work without option framework.
    so what i need to do ???

    Thank you , Devin.

    • Devin wrote:

      The Options Framework should work fine in 3.7.x. What issues are you having?

  17. Thanks Devin, these theme option really helpful for me.

  18. lemonthirst wrote:

    is there an option to display multiple background patterns from the admin interface?
    I have a few patterns that i would like to be displayed as thumbs before selecting which of them is going to be used and i am having a hard time finding and option to display the patterns.
    Also thank you for this great framework!

    • Devin wrote:

      You could use the “image” option.

      • lemonthirst wrote:

        Thanks, i’ve managed to make the option work.

  19. Steve wrote:

    Hi. I am using Options Framework Theme 1.6, transferred into my own theme.

    I have a number of options which are checkboxes.

    All except 1 checkbox works fine. This 1 will not stay unchecked. When the options page reloads, it has become checked.

    The code in options.php is identical to the other checkbox options.

    Any ideas?

    • Devin wrote:

      Do you have the option name set correctly, or is a duplicate of another option? That would be my first guess.

  20. Michael Mann wrote:

    Working to add in a timepicker option, but I’m stuck adding in the actual jquery code to show the timepicker. When I add it to the options.php file, it breaks things when I update, saying headers have already been sent. Any help on adding a script section without causing the issue I’m seeing?

    • Devin wrote:

      You’ll need to enqueue it onto the options page. Look how the built-in media-uploader.js and options-custom.js scripts are loaded.

  21. Roger Vater wrote:

    Today (Wed 12/4) , I updated to Options Framework v 1.7. Unfortunately, it DID NOT work well for me! Using “On-Demand” Theme from Press75.com
    Completely change everything on the site back to defaults, almost as if I was starting with the theme from the beginning! I had to contact my host, and had them restore an earlier version of my database and Options Framework. Now working again. Using WordPress v 3.7.1 Can you tell me what happened?

    • Devin wrote:

      Hi Roger. There was a bug that caused the correct option name to not be read in some cases. A fix was out within a few hours, but a number of people did experience the bug. Huge apologies for the trouble. If you upgrade to the latest version (1.7.1) it should work correctly for you. No data was lost.

  22. espimedia wrote:


    Just updated the framework V1.7 and to my horror… all, ALL… theme settings got erase from the logo image to the homepage video to the favicon, etc. What?!? How can this be, how does one bring back all settings? PLEASE HELP…

    • Devin wrote:

      Hi Nancy. Don’t worry, the data is still there. Version 1.7 had a bug that caused the correct option name to not be read in some cases. A fix was out within a few hours, but a number of people did experience the bug. Huge apologies for the trouble. If you upgrade to the latest version (1.7.1) it should work correctly for you.

  23. Pingback: WordPress Contributors | Jamie Thompson

  24. nir wrote:


    Does this Options Framework Theme support WPML not only by translate fields but also duplicate DB for each language ?

    I mean, save preferences for one language and different preferences for other language.

    I saw something like this in “Replete Theme” (themeforest).

    thank you.

  25. WebR wrote:

    Hello.. I will be happy if someone will give to me advise… i am using last version of options-framework-theme .. Theme Options page working for me ok… (I did check with debugging mode on different versions of WP and all good)… but when i sent theme to themeforest they said that Theme Option page dont working.. that error http://d.pr/i/wJdI there…. but when i check it on my local and not local servers all working ok.. that why for me difficult to find where is error…
    Thank you!

    • Devin wrote:

      Someone else mentioned this, but I believe the error was coming from somewhere else. Ask them to help you debug the issue since you can’t recreate it locally. Does the error occur on other WordPress pages?

  26. Steven Doig wrote:

    Hi Devin,

    I’ve integrated the Theme version of your Options Framework into my theme.

    Should I be able to call of_get_option in footer.php?

    It’s not currently working.


    • Devin wrote:

      of_get_option is defined in options-framework.php. So as long as that has been included you should be able to use it.

      • Steven Doig wrote:

        Thanks Devin

  27. nathan wrote:


    How do you use the to work for lets say an a:hover style that is in my css sheet? I’ve been doing inline styling from my php files to make my logo and background images work but I’m getting snagged at this point.

    So for example, I want to change my menu hover links from the theme options panel. But, the only place it is styled is in my stylesheet.

    Do I add something like this to the header.php file?

    a:hover {color:”"!important;}

    • Devin wrote:

      You output it in wp_head with your other inline styles. Please see some of the examples in the Options Kit. Inline styles will override CSS in your stylesheets, so no important is needed (though make sure your specificity is correct).

  28. Fred wrote:

    Is there a way to download a previous version? The latest version crashed my admin area. My front end still works but can’t get to my login area b/c of this error:

    Fatal error: Call to undefined function _optionsframework_options() in /home/rankings/public_html/wp-content/themes/jono/lib/admin/admin.php on line 24

  29. Karo wrote:

    Dear Devin,

    I installed the framework plugin for the author theme, but now with the new wordpress version 3.8 it won’t work because its not compatible yet. When will the version will be updated?
    thank you!

    • Devin wrote:

      Options Framework is compatible. You’ll need to contact the theme author about the theme.

  30. mohammad_rasool wrote:

    does this frame work has update and lifetime support after buy?

    • Devin wrote:

      As long as I am working on updates for the Options Kit, updates will be free for purchasers. No support is offered, though I do my best to answer questions.

  31. Nick wrote:


    is Options Framework 1.7.1 compatible with WP 3.8 ?

    it seems to crash my theme? I get this error when I activate it

    Call to undefined function _optionsframework_options() in /home/chspcom/public_html/wp-content/themes/chsp/lib/admin/admin.php on line 24

    Any help would be appreciated.


    • Devin wrote:

      Could you e-mail me your theme? I will take a look into it. devin [at] wptheming.com.

      • Sally wrote:

        I am having the same problem:

        Fatal error: Call to undefined function _optionsframework_options() in /nfs/c04/h02/mnt/66376/domains/cshoresal.com/html/wp-content/themes/ayoshop-wp-theme/lib/admin/admin.php on line 24

        I tried to find version 1.6 to roll back to, but haven’t found it anywhere.
        ~ Sally

    • T. Bond wrote:

      Hi Devin,
      I’m having the exact same problem, whenever I try and install The Options Framework Version 1.7.1 to wordpress, my site seems to shut down and I get this error message

      Fatal error: Call to undefined function _optionsframework_options() in /home/busb/public_html/wp-content/themes/romo/lib/admin/admin.php on line 24

      Is it possible that you could be of help?

      • Devin wrote:

        Could you e-mail me your theme? devin [at] wptheming.com. I’ll see if I can help out with a solution. Also, please let me know where you got the theme from.

  32. Nathan wrote:


    The Options Framework is awesome. Thanks for creating it. I bought the kit as to show my support. You deserve to get paid for all of your hard work.

    The only thing I am having difficulty figuring out is how to use the of_get_option for styles referenced in the stylesheet. I understand I can use inline styling but there are certain elements that arn’t referenced from my php files.

    Example of what I want to do — be able to change the a:hover styles from the theme options panel. How do I make the of_get_option work? Do I need to put a at the top of my header.php and call it from there? Maybe something like this?…

    I hope this makes sense. Any help would be greatly appreciated.

    • Devin wrote:

      Hi Nathan. You can output hover styles inline in the head like you would any of the other styles. The “Options Typography” theme in the kit has an example of how to output styles in the head. You can also look at my Portfolio Press theme.

  33. sandy wrote:


    I use latest version of Optional panel but when i use theme check plugin it give me error:

    REQUIRED: class-options-framework-admin.php. Themes should use add_theme_page() for adding admin pages.
    Line 34: add_action( ‘admin_menu’, array( $this, ‘add_options_page’ ) );
    Line 99: function add_options_page() {

    any solution for this ? I was updated theme check plugin and wordpress

  34. Rens wrote:

    Hello Devin,

    I just purchased the script and just wanted to say it’s a great and handy template extension!

    Of course I would like to improve it so here is my improvement/suggestion:
    I noticed that you would have to extend the jQuery code for each “toggle” element you would add to the options.php.

    You could do the following:
    For example, in your options.php you have:
    - A checkbox to use a Logo instead of Text for your site title
    - Then in my case 2 types: 1: text / 2: upload

    Now without the need to edit this jQuery script each time I did the following in my options.php:

    $options[] = array(
    'name' => __('Check to Show a Hidden Text Input', 'options_framework_theme'),
    'desc' => __('Click here and see what happens.', 'options_framework_theme'),
    'id' => 'use_logo',
    'class' => 'toggle',
    'type' => 'checkbox');
    $options[] = array(
    'name' => __('Hidden Text Input', 'options_framework_theme'),
    'desc' => __('This option is hidden unless activated by a checkbox click.', 'options_framework_theme'),
    'id' => 'logo_test',
    'std' => 'Hello',
    'class' => 'hidden use_logo',
    'type' => 'text');
    $options[] = array(
    'name' => __('Uploader Test', 'options_check'),
    'desc' => __('This creates a full size uploader that previews the image.', 'options_check'),
    'id' => 'logo_url',
    'class' => 'hidden use_logo',
    'type' => 'upload');

    You see, that the checkbox ID referrers to the class after “hidden”.
    Now in your functions.php replace your jQuery code for this:

    jQuery('.toggle input').on('click',function(){
    var $id = jQuery(this).attr('id');
    jQuery('.toggle input').each(function(){
    var $id = jQuery(this).attr('id');
    if(jQuery('#'+$id+':checked').val() !== undefined){

    That’s all, maybe it’s a good improvement!
    Anyway, keep up the good work :)

    • Devin wrote:

      Hi Rens. Thanks for the suggestion. I like the way that Twitter Bootstrap handles toggling, with data attributes to target the id to be toggled. May approach this feature in the next version of the Framework.

  35. Josh Warren wrote:

    This is an awesome framework. I have very poor PHP skills, but I was able to add all of the options I wanted to within a few hours just by studying the examples you provided. Thanks a lot for providing this.

  36. JR wrote:

    How would I go about having two theme options. I would like to have one only accessible by the editor role and the other for the admin. Of course due to the fact that it would limited to the editor role, I would have to move that theme outside of apparence.
    Thank you

  37. Radley wrote:

    Hey Devin, I’d like to suggest a transparency grid as the background for image/upload fields. It’s very simple to add, but when you are dealing with a dark website which may upload white/transparent images, it would be very helpful.

    I’ve already developed some CSS which I stick in as the last field which does this for me, but I think it should be part of the plugin itself, so others can benefit from it too.

    Default: http://radleygh.com/images/chrome_2014-048-15-17-47-51.png
    Transparency Grid: http://radleygh.com/images/chrome_2014-048-15-18-13-60.png

    I’ve created three sites which used white images in the theme, and it works fine as it is. Without this tweak, though, it is difficult for the client to know what that box is even for unless they look carefully.

    Here’s the CSS I used, just need to stick an image in there: http://pastebin.com/F4Q0sC2M

  38. JRL wrote:

    I added the options framework to a custom theme I had built for a client. I really appreciate all of the work you put into this project. Thanks.
    I have one question though. My clients theme is periodically updated and I create a new version of the theme to load. When updating the theme, however, all of the options revert back to the original defaults. Is there a way to recapture the previously saved options without having to go into the database and copy the old versions options fields? I noticed that it is grabbing the theme version each time and adding it to the name of the options even though I have a custom id loading. Thanks in advance for your help.

      • JRL wrote:

        Hi Devin.
        I did set the option name in exactly the same spot. Does it matter that I am using the Theme Options Kit and not the plugin? I made this change in the options.php file that sits in the main theme directory. The theme is custom and it’s main directory name is created on the fly with each release. The name of the directory has the version appended to it so that I can keep the previous version until any bugs are worked out. Is this the problem? In other words, in the wp-content/themes directory, you would have ThemeName001 and ThemeName002.

      • Devin wrote:

        If you set the option name manually like that, it shouldn’t use a different one. No difference between plugin and theme version.

        Can you check to make sure the function is being fired? Perhaps there’s a typo in the function that prevents it from being called, so the framework uses the default behavior.

      • JRL wrote:

        Ok, I’m a bit of a noob, and I know I should be able to quickly check to see if this is firing, but how, exactly would you go about doing that? Dump the data to the browser screen?…

  39. A.J wrote:

    Hello Devin,

    I am trying my best but I am unable to support a custom post type in options framwork theme. The theme I am using is goodnews45. Where are the custom post type (like woocommerce products) declared. I have tried functions.php but could not understand anything. How can edit options framework for woocommerce custom post type.



    • Devin wrote:

      What is your question? What option are you trying to build that involves a custom post type?

  40. Monica wrote:

    I’m trying to help a friend with her website, and the plugin has been installed, but it won’t activate. I get the following error. I am stuck and can’t move forward with theming, etc. Any ideas?

    Fatal error: Cannot redeclare optionsframework_init() (previously declared in /home3/northtg5/public_html/wp-content/themes/discover/admin/options-framework.php:73) in /home3/northtg5/public_html/wp-content/plugins/options-framework/options-framework.php on line 54

    • Monica wrote:

      P.S. We’re using a premium theme (“Rescue” – http://bit.ly/1ewwlCc) that requires your plugin…doubt you need to know that, but just in case. ;)

      • Looks like the options framework is being included twice; once in the theme and again with the plugin.

        Have you tried disabling the plugin? Do the theme options work then? If this doesn’t help I think you’d be better off contacting the theme author on Themeforest.

        Hope this helps!

  41. Mike wrote:


    I just purchased a genesis child theme called Romo, and the options framework plugin was required to use the theme. Every time I install options framework it seems to crash my theme. I only see a white screen in the admin area… nothing else.

    Any ideas?


    • Devin wrote:

      I’d contact the theme author- it’s likely an implementation issue. You can turn on WP_DEBUG to see what the error message is.

  42. Rameez wrote:

    The Licence of this $30 option framework is commercial or personal?

    • Devin wrote:

      The license is GPL. You can you use the code however you like as long as it retains the same license.

      • viv maxwell wrote:

        Can I use this option framework in wordpress theme (commercial selling product) after purchasing it with $30 ? Option framework is with GPL license. So after including this , how can I aware my theme purchaser that the option framework included inside theme is purchased by me (without violating any licensing term).

      • Devin wrote:

        Hi Viv. To include the Options Framework in your theme, the theme must also be licensed GPL. You can split license your CSS/JS/images if you choose, but the actual PHP in your theme must be GPL. Other than that, you are welcome to use it in a commercial project.

  43. a,j wrote:

    Dear Sir,

    I was talking about custom posts type called “Products” which are created by woocommerce. The theme I am using is goodnews45. The theme has very good settings. But when I try to use sliders (built in theme) or video slider(also built in theme) then it shows the usual post type supported by wordpress. It does not show the custom posts created by woocommerce plugin. I need to edit some codes somewhere in the framework so it can load custom posts types in its panels.


  44. Pingback: Build Wordpress Themes Faster >> Brand Graphics

  45. Aditya Chaudhary wrote:

    I am trying to create a child theme of a theme that uses options framework.
    It doesn’t work! I cant seem to figure out why??

    Can you tell me how I can achieve my goal?

    • Devin wrote:

      Did you watch the video? You’ll need to include the files using get_stylesheet_directory_uri rather than get_template_directory_uri.

  46. viv maxwell wrote:

    yes definitely , I am planning to purchase it.now I am just testing plugin version. The best thing i like it in is an array of option values in font and some other field types.

  47. hassan wrote:

    Hi Devin ,first thank you for the awesome plugin, it saves me a lot of time . i just wonder how i can group for example tree or for or any number of text input fields or whatever under one label ??

    • Devin wrote:

      You can hook in some CSS to hide the headers you don’t want and float the elements.

      • hassan wrote:

        Hi Devin thank you for the reply it is good idea thank you again ,i ll try to add label as an option to existing options exactly like text and style it once

  48. Danilo wrote:


    I’m trying save the above code in a textarea field:

    When I save, only this part is saved:

    In functions.php I can allow some HTML tags, as iframe, link and script. But, if i try with a div, isn’t work.

    Important: this FB code is HTML5. Is it that the problem?



  49. Danilo wrote:

    Hi, Devin.

    With this code (functions.php), I can put a counter character in a page custom field.

    function excerpt_count_js(){
    jQuery("#acf-cf_titulo_seo textarea").after("Contator de caracteres");
    jQuery("#counter_titulo_seo").val(jQuery("#acf-cf_titulo_seo textarea").val().length);
    jQuery("#acf-cf_titulo_seo textarea").keyup( function() {
    jQuery("#counter_titulo_seo").val(jQuery("#acf-cf_titulo_seo textarea").val().length);

    add_action( 'admin_head-post-new.php', 'excerpt_count_js');

    How can I change the code to put the same counter after a textarea, in theme options?



  50. Jamie wrote:

    Should the plugin version be use in themes in order to pass WordPress theme review?

    • Devin wrote:

      The Theme Review Team likes you to use the bundled theme version.

      • Jamie wrote:

        Thanks very much Devin. Keep up the great work. Love your site too!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>