[Resolved] How to make shortcodes work in a widget
I had the prolem myself, wanted to have Easing Slider work in a widget in top of my site… I found this solution very helpful:
Are you thinking of using a plugin that uses shortcodes? (Shortcodes are tags in square brackets like [az-index id=”1″ escape=”true”] that some plugins use to embed content into posts and pages.) Do you want to be able to use a shortcode in your blog’s sidebar instead of your post or page?
Well, if the answer to both those questions is “Yes” then you have come to the right place!
Normally, shortcodes are ignored if you try putting them in a sidebar widget — all that’s displayed is the shortcode itself. But there is a one-line tweak you can add to your theme that will enable you to put any shortcode you like in a sidebar widget. For example, one AZIndex user recently wanted to display an index generated by the plugin in his blog’s sidebar. These are the steps he followed:
1.Login to your blog’s administration pages and go to the Theme Editor — i.e. select Design >> Theme Editor from the admin menu.
2.Look in the list of Template Files on the right of the page for one called Theme Functions or functions.php and click on it to load it into the editor.
3.Find a place between the <?php and ?> tags which is not in the middle one of the functions that may already be in the file (the very top or bottom of the file are both good places) and add the following line: add_filter(‘widget_text’, ‘do_shortcode’);
4.Click on the Update File button to save the modified template.
That’s all you need to do. Now any shortcodes you add to a sidebar widget will be correctly processed by the plugin they belong to. The easiest way to test this is as follows:
1.Go to Design >> Widgets using the administration menu.
2.Find the Text widget in the list on the left, and click its Add button.
3.Click on the new widget’s Edit link, and enter a title for the widget and then add the shortcode below it.
4.Click the Change button, then click the Save Changes button (easy to forget) and then go to the front page of your blog to see your new shortcode-enabled widget.
(Note: your theme must support widgets for the new text widget to show up. If it doesn’t then you will have to “widgetize” your theme or find another theme that does support widgets.)
So if you have been itching to use AZIndex to put an index of posts in your sidebar (just not too big, I hope) then now you know how to do it! Of course, this tip will work for any plugin that uses shortcodes.
Found the solution here: http://englishmike.net/2008/07/07/wordpress-quick-tips-3adding-a-shortcode-to-a-sidebar-widget/
Credit to English Mike for this.
- The topic ‘[Resolved] How to make shortcodes work in a widget’ is closed to new replies.