Freaky Trigger’s WordPress Setup
Widget Logic
FT had a complex sidebar, but I decided to ‘widgetise’ it when Steve updated the theme in early 2008. To keep some of the special widgets appearing only when needed, I wrote a plugin to extend the functionality of widgets. Widget Logic allows widgets to appear or not depending on standard WP conditional tags, such as is_home() and is_single() and so on.
If you want to contact me about it you should address yourself to the WordPress org directory and perhaps post on the forum there. Or you can leave a comment here, below. PLEASE READ THE FAQ AND OTHER NOTES in the WordPress plugin directory first though.
If you find Widget Logic useful to you, then you could consider a small donation to Cancer Research UK – click ‘Donate’ on the widget over to the right there –>
VIDEO TUTORIAL! Popup or view on YouTube a screencast by Daryl Lozupone. Thanks to him.
Podcast Channels
Podcast Channels is a plugin that augments WP’s RSS feed with some extra elements, mostly in the ‘itunes’ namespace. It works with existing features of WP (auto-enclosures and the media library) to make a simple way to podcast, and allows different metadata in different RSS feeds – you can have as many channels as there are categories, tags, even blog authors.
Like a lot of people I found PodPress increasingly frustrating to use around WP2.6. I still see lots of people using it, but I found it was interfering with too many aspects of WP – wysiwyg editing, the media library, and so on. But there were only two things it did that I liked – show download stats, and allow multiple podcasts on a blog with their own rss and iTunes metadata. So i wrote a couple of plugins to target just those functions.
(I may release the stats plugin some day, but it’s nothing special, a bit clunky, and I really don’t want to support it.)
Freaky Trigger Theme
This was designed by Steve Mannion @ base58.com
Plugins FT uses
- Akismet by Automattic
- Cimy User Extra Fields by Marco Cimmino
- Contextual Related Posts by Ajay D'Souza
- Edit Comments by Andrew Sutherland
- FT Combo by Alan Trewartha
- Get Recent Comments by Krischan Jodies
- Google Custom Search Plugin by Aleem Bawany
- MediaElement.js - HTML5 Audio and Video by John Dyer
- More Fields by Henrik Melin, Kal Ström
- Organize Series by Darren Ethier
- Podcast Channels by Alan Trewartha
- Relocate upload by Alan Trewartha
- Revision Control by Dion Hulse
- SABRE by Didier Lorphelin
- Widget Logic by Alan Trewartha
- WP-DBManager by Lester 'GaMerZ' Chan
- WP-Polls by Lester 'GaMerZ' Chan
- WP-Polls Widget by Lester 'GaMerZ' Chan
- WP-PostViews by Lester 'GaMerZ' Chan
- WP Google Analytics by Aaron D. Campbell
- WP No Category Base by iDope
wow, look at all of them. FT salutes you
admin in • 124,916 views

Thank you so much for this plugin. I appreciate that you took the time to make a tool that is useful for designers/developers like me
Hi – first of all, GREAT plugin and thanks for creating. My question:
On my site (takesunset.com) I have all the blog related widgets set to appear only on takesunset.com/blog, however, whenever someone clicks on a post they disappear. what function must i input to get them to appear whenever someone clicks on a post? thanks!
One more question – can you add two commands to one widget? For recent posts I’d like to have both:
is_single()
is_home()
can i do that in one widget or would i have to add the widget twice? problem is, i can’t seem to add “recent posts” twice for some reason so i’m hoping i can add both to one widget. thanks!
rob
Thank you so much for making this plugin. It was really useful for me.
Podcast channels are a great add on for any blog. Thanks for the inputs on wordpress set up and themes.
is there a widget logic to use for showing a widget on a post by author. So lets say I have 4 authors and I want a widget to show only on single posts by a particular author? Thank you for a great plug in!
I’ve widgetized my multimedia box on Thesis but I’d like to add a transparent descriptor in the box to help readers understand how to use the widget do you have any tips?
Heidi, turns out the is_author conditional tags aren’t all that useful – in that they only work as if they were ‘in_author’ tags, ie as author archive pages. BUT you can use the get_the_author_ID() function to get the author of the current single post. which means you can use:
`is_single() && (get_the_author_ID()==33)`
to get a widget to appear on single posts by users with that specific ID
I have downloaded Widget Logic, but can not find a tutorial or directions on how to actaull impliment!! Pretty new to Development. Please direct me to HOW TO USE manual :)
Thanks
I am rewriting the widget logic so that i can easily go from
-> Edit Page (a link like “edit widgets”) then it takes me to the widgets page where i can edit the widgets for the specific page. Insted of having all widgets for every page on the widgets page. No need for typing in is_page() logic in the field. It inserts in a hidden field and automaticly. But now i have a problem i want to use the same filter like widget-logic filters the widget in my theme ( show widgets only on certain pages ) So how can i apply this hook to the “sidebar_admin_page” widgets.?? any help would be great. this would be a great update for widget logic anyways!!!!
always on the lookout for suggested additions.
what would “edit the widgets for the specific page” involve? setting a visible/invisible flag per widget?
i have thought of something like adding a ‘write post/page’ box extra that lets you choose a named sidebar for when showing that single post/page. i’d have to work out a way to add to the theme’s declared sidebars, but i bet it’s do-able.
on the write post page i already added a box called “Edit Widgets” so it simply passes the PostID to the widgets page. Originally you have a field in the widget logic where you can type the condition is_page()
there i catch the PostID and insert it:
input type=’hidden’ value=’is_page(‘$_GET['post']‘)’
i make the input field hidden, so that the user dont have to bother with typing in conditions. The Next step would be to automaticaly determate which content the link came from and then insert a condition.
For example if you come from a category to the widgets page, auto insert in hidden field “in_category(‘$_GET['catid'])” These rules would be no problem for me.
I need help on the Filtering widgets Issue. Please help me in filtering the widgets on the admin widgets page the same way you did in the theme frontend. I only want to show widgets filtered through is_page(‘$_GET['post']‘)
maybe we could find a way.it would be a great addition or variation for WL. My msn is vaiz@hotmail.de please contact me
I scribbled the Issue with Photoshop.
http://scoramba.de/Issue.jpg
i’m sorry, it’s not clear to me how you target specific widgets in the first place. and i’m not sure widget logic can filter the admin page the same way it does the main blog.
have you looked at “section widget” or “widget context”? they might suit your purposes
http://wordpress.org/extend/plugins/section-widget/screenshots/
http://konstruktors.com/blog/wordpress/842-wordpress-gpl-widget-context-plugin/
The apply filer method? Your Hook apllies a filter to the registered_widgets.
add_action(‘wp_head’, ‘widget_logic_redirect_callback’);
i tried adding
add_action(‘sidebar_admin_page’, ‘widget_logic_redirect_callback’);
but it seems it not adresses the registered_widgets right.
thank you for the tips and plugin links. But Maybe you ll get an idea.
i don’t think that will work on the widget controls in the same way as it works on the widgets themselves. that will take different code. either way, i’m still not clear how you target widgets to appear or not in the first instance.
and say you click through from a page to the widgets admin, how do you indicate you no longer want a widget to appear. Hoe about when you want a hidden widget to appear again?
the basic idea was to edit widgets in general on a “per page basis”
not to having all widgets from all pages mashed up in one area which is very confusing. only edit the widgets of the selected object would be the magic.
The Widget Logic field disappears after saving the Widget, so I can’t adjust the logic once entered. I guess it’s because of my 2.8 upgrade … not sure as I did that awhile ago. Any fixes yet?
i’m not seeing this on any of the setups i have. what version of 2.8 are you running (2.8.4 i hope) and are you on the latest version of WL (i assume so as you ask about fixes)
i’m running the most current wordpress and widget-logic but the logic doesn’t seem to be working. I put is_page(‘certainpage’) in the logic box but the particular widget still shows up on every single page instead of just the one certain page that i wanted. how does this widget work? I’m use a db caching plugin and css/js concatenate plugin on my wordpress, could those be effecting this widget logic plugin of yours?
have you read through the troubleshooting stuff at http://wordpress.org/extend/plugins/widget-logic/faq/ ?
if your plugins result in caching of any sort, this will stop changes appearing immediately of course.
How does one just have a widget appearing for a particular post, say post 33?
i cannot stress enough how much it pays to read the codex on conditional tags. eg, read this bit on ‘single post pages’:
http://codex.wordpress.org/Conditional_Tags#A_Single_Post_Page
You could put it in bold? That would stress it more.
more, but not enough :-)