I admit it. I’m addicted to WordPress widgets, but probably not in the same way that some people might be. I very much like building cool widgets, even if I have no use for them myself.
I’ve been looking around the WordPress-o-Sphere, trying to find any widgets that I would recommend to my users at Theme Hybrid. Quite frankly, I haven’t found too many that I like. Many don’t offer settings for the user to tinker with. Most aren’t even multi-widgets (you can only use them once).
So, I’m on a mission.
What are WordPress widgets?
Unless you’re new to WordPress or haven’t upgraded your blog in quite some time, you’ve missed out on a lot. The WordPress Codex explains widgets as:
WordPress Widgets are also known as “sidebar accessories” which are WordPress Plugins or add-ons to your WordPress blog sidebar. Developed by Automattic for WordPress and WordPress.com blogs, WordPress Widgets allow the easy addition of design elements, gadgets, content, images, and more to your WordPress sidebar to personalize your blog without knowing HTML, PHP, or any code.
Ughh! They used the term “sidebar accessories.”
If you’re using a theme like Hybrid or Thematic, you probably know that the term “sidebar accessories” doesn’t apply to your theme. You’re probably aware that you can add widgets just about anywhere. In fact, Hybrid has a page template that’s completely widgetized.
To settle this right now — widgets are not sidebar accessories. They are simply accessories. With the right theme, they are accessories that you can place anywhere.
My mission
I want to code some new widgets.
My vision of what widgets should be and others’ visions might be different. I want widgets that extend the core WordPress functions. I want to extend the things that are already there but might be hard for Average Joe to implement.
For example, anyone that has used WordPress long enough probably knows how to work with the wp_list_pages() function. But, isn’t it much easier to just click an option here, select a drop-down there, instead of diving into code? (Note: The Widgets Reloaded plugin handles this particular function.)
What widgets would you like to see?
Pretend you were hiring me to create a cool widget for you. What would you have me build?
Honestly, I wouldn’t take the job if you asked me to integrate with some third-party service like Twitter or Flickr or something like that. I would probably only take it if you wanted to get information that already exists within WordPress and use it within a widget.
I am not using widgets much (usually just edit in code snippets) but have one fitting idea – list posts that were made on same day in previous years. Something like:
Blast from the past for Feb 06, 2009
- Old post tite (2008)
- Really old post title (2007)
- Another really old post title (2007)
- Somewhat ancient or bugged title (2005)
If no fitting posts for the day widget simply doesn’t display. It could use variations with week and month display period for blogs that have few posts.
TIA
PS my blog is not yet one year old, consider me optimistic
I’m just thinking out loud here and a lot of these widgets may already exist as part of current plugins or themes.
A “log-in box” widget would be nice. Something that allows users to log in via the sidebar.
A breadcrumbs one would be cool.
Improved wp_list_pages similar to what the ‘Fold Page List’ plugin does would be excellent, but I think that’s a lot to ask.
Google Ad ones are always nice.
One that pulls photos from Picasa and NOT just Flickr.
One that pulls together available RSS feeds and email-feed options.
One that allows you to add PHP code so you can, for example, add a code to a sidebar.
An accessibility one allowing for theme colour changes and font re-sizing, perhaps using jQuery.
Errr, that’s all I got for now…
One of the things I would like to see is snippets. This is a custom feature we have in our cms (not wordpress), that allow us to have in the sidebar snippets related to the current post, this can be links to sub pages (already possible), but also thins like a small image advertising a specific feature of this page (like an annual review), links to videos relating to this page etc. Snippets can be created out of anything, they are usually composed of a small blurb explaining the content of the snippet and then the link.
For example you could have a page on a new training program you have, a snippet could be a link to another page with testimonials about your training, it could also be a link to your online brochure etc.
To make this work you should be able to create a optional snippe of pages, post, galleries, etc… The snippet could have a title, image, small blurb and link. By making the snippet related to the page it links to instead of the page is being linked from you can add the same snippet to multiple pages.
Then on the page where you want to insert snippets you could have an interface for selecting the snippets, in which order and what specific part of the snippet you would like (on occasions a snippet has an image, but you might not necessarily want to include the image ).
I understand this can develop into a monster of a widget/plugin, but you wanted fresh ideas…
I would love to see a plugin that enable you to read from another database/table and display that on a page/post, or allow you to select from a drop down menu as a widget.
For an instance, you have a table called “contacts”. Would be nice to have a “widgetised” way to pull data from that table showing in your page/post or allow the visitor to do search in that particular table.
By the way I loved the query-posts plugin. I’ve been testing on my local server. It’s really great, and has a lot of potential. Great job!
A category Widget wrapper to make a widget appear only in a given category.
Would allow you to choose another available widget (and configure it) from a dropbox . The it should let you define category/post filter where you want the contained widget to appear.
I’d love a widget that lists authors with a certain user level, then when viewing an authors post a widget that lists all the authors other posts.
A simple list child pages widget!
Well, there’s certainly not a lack of ideas around here.
Rarst — Blast From The Past would be a cool widget. It’s exactly the type of thing I’m talking about (getting data from WordPress). I do believe there are some plugins that do this, but I’m not sure if they’re in widget form.
mkjones — Mike Jolley has actually already created Sidebar Login, so that’s already done for us.
Lots of great ideas. I’m especially interested in making a breadrumbs widget. It would come in handy when making my completely widgetized theme (if I ever do create it).
Frank Lores-Penalver — Snippets sound cool. I’d really like to hear more about them. I’m trying to think of ways of how to make this easy to use though.
The idea I kind of have in my head at the moment is placing a textarea on the Write Post/Page screen for custom snippets. Then, when a page is loaded the snippet is shown by way of widget (if no snippet is found, nothing is shown). This could potentially open the gateway for tons of fun and useful things.
Adriano Estevam — That sounds cool, but I’m afraid that’s a bit out of my leauge, so to speak. I’m a lot more accustomed to working with the tools available in WordPress.
Query Posts has been fun developing. I’m hoping for an official release next week.
Stefano F. (tacone) — You might want to check out Widget Logic. It’s great for adding contextual widgets.
Dave — What I really want is for the WordPress.org team to give us more author template tags, or at least more parameters to use within the given tags. I’ve long said that WordPress was lacking in functions for authors. You can do pretty much anything with
wp_list_pages()but almost nothing withwp_list_authors().A Other posts from this author widget would be cool as well.
amy gail — That shouldn’t be too tough. Actually, mixing up the Widget Logic plugin with Widgets Reloaded would work well if you don’t have loads and loads of pages.
a followers widget like blogspot has
Justin, on the listing authors with a certain user level, I achieved this using your Options theme by modifing one of the Options functions, not sure what it was but can root it out if you want.
I added something like
and:
to the function query & it works fine for now, but would love to see it as a widget that can be added multiple times with the `$level ` being set in admin/widget settings.
WOW…
I would like to see a following widgets developed by you
1. 125px ad management
2. Auto Gogole Adsense and similiar ad plugins with auto ad rotation
3. A wikiedia lookup and auto link for specific wikipedia page
Thinking for more. will update once something comes to my mind.
-
Regards
TJ
As for the custom page/post snippets I think this has been done before, but a long time ago, I would really like to see an updated one. Have you checked out this plugin that helps you add default custom fields to the page/post edit/creation page for users etc
http://wordpress.org/extend/plugins/custom-field-template/
Great site by the way, if only everybody would create such great themes for free as you do…
Keep up the good work
ATB George
Justin, this is a really great idea. Since I am new to all this, I’d be interested in learning the other things we can possibly do as widgets. Up to this point, I had only considered them as sidebar enhancements. Perhaps you can point me to some articles that talk about other uses for widgets. Or maybe you are planning on writing something later, also. Thanks.
I’d like to see a universal custom field widget.
The the widget setup would pull all “names(key)” and “values” for the user. The user could then select a key and get a list of all posts with that key – same for value. Or both fields could be used simultaneously to produce a list of results displayed in the sidebar. Image/thumb support would be cool, the ability to affect the sort order of the lists, and the ability to limit the number of posts. And the widget title would link to a search results type page.
How about that for a wish!
Thanks. Great stuff!
KLM
What I’d love to see more than anything is the Widget feature breaking free of the sidebar. Why can’t we put Widgets in our header or footer? Many in the WordPress community really thought WordPress Widgets would break out of the sidebar by now.
>Why can’t we put Widgets in our header or footer?
Ehm… We can’t?
I have changed my theme to have widget area in footer just fine. And I think plenty of themes with large footers have them widgetized.
Hy, here my ideas:
1. A sidebar widget that displays flickr pictures based on the post title or on the tags of a post(s).
2. A sidebar widget that displays pictures (flickr, picasa, …) based on the geo location of a post.
3. A simple slideshow widget diplaying images used in the post (not nextgen gallery or else, just standart uploaded images)
Thank for your work.
maui
I would *love* to have a WordPress widget (compatible with 2.7) where I could display the bath goodies that I’m currently enjoying in my bubble bath.
You know, like how some people display on Shelfari what they’re reading … this would make a list of bath and body goodies that you specify (maybe even with thumbnail photos). It would take a while to create that database, though, I’m sure! I’m a bubble bath junkie.
Hi Justin, I’m really new to all this, only started blogging early Jan this year and only moved over to Wordpress yesterday. I would love to see a “followers” (and a visitor counter) section like blogspot do. Apologies if there is already some way of doing this but from the bits I’ve read regarding this it seems to be a no-no.
Good luck with the creating
Lisa
Can you make some SMS based wordpress widgets?
Justin,
Lorelle’s idea has some merit and I believe it is something that Drupal does natively. WP could have user defined regions that would be “really easy” to add to current templates and could be widgetized. It’s not so much an extension of the core functionality as areas where theme developers would have to provide to appropriately extend their themes. Not sure if it fits your plug-in ideas…but definitely a thought-provoking idea nonetheless.
Keep up the great work!
I remove my request because widget with almost exact functionality I suggested was released http://wordpress.org/extend/plugins/time-machine/
How about a “search” widget based on what the admin defines (eg. specific categories, tags, authors).
Combined with Widget Logic, I can see the potential usefulness for this.
Is their a widget that syncs with I-calendar. I have am trying to make it so that I can have one calendar on my internal company blog that syncs to everyones else’s I-calendars, making in essence, one master calendar. Maybe their is something like this, but I haven’t seen it yet. Thanks.
Justin, I think we need widgets and plugins to make WP more social. As add-ons to BuddyPress or as independent code.
On LinkedIn you can see how much you’ve “invested” in your profile as a percentage number, in my case 85% since I have not been recommended by anyone yet.
How about a points system where you get 1p for thumbs up/down, 10p for a comment (or 50p if the moderator finds it useful), 100p for a review and so on. All configurable of course.
This would get users more involved for sure.
This might be a simple one, but it might be a good example of a small scope widget that others could learn from. A “latest posts” plugin that is tied to a particular category. It would have 3+ fields in the admin menu.
Required: title, drop-down of category, input field for number of latest posts
Nice To Have: Drop-down to specify sort order matching theme functions.
Perhaps it would be a good example to pitch to http://net.tutsplus.com/ on the how to write a widget.
I posted that last comment a little too early. Your query_posts test plugin (http://justintadlock.com/archives/2009/01/28/anybody-want-to-test-a-new-widget) does exactly what I was after. Great job Justin!
I would really like to see a plain widget or two for my book review site.
1) Currently Reading: This would allow me to upload to my server a book image, and link the book image to a url buy the book, the book title, a section where I can tell my readers what page I am on.
I.E.
Book Image
Title of Book
Reading Page: ____
Note: I have looked at all the ones listed on WPplugins, etc. and all of them use either Amazon, BN or something. I read many ebooks from online retailers so they don’t show up at Amazon.
For an example go to my website. I am currently using a text widget to do it, and I hate having to add each and every one with code and everything.
I would love it if the widget only posted books that have been added in the last 30 days, and perhaps had a MORE that will create a page gallery of the images/txt in the body to show more books that are over 30 days, but that might be too much work. *chuckles*
2) New for Sale: A simple copy of the Currently Reading, but without the page number.
Basically it would just allow a book image, title, and maybe something to mark it new for books that have been added in the last 30 days.
I know I am probably asking too much, but you asked what I wanted to see right?
HS
Brain dump of widget concepts ahead:
A widget that is really just a wrapper for creating lists. Yes I can do it with a text widget, but if the point of widgets is to make it easier than having to hand code the html in the template, why not ways take it to a further conclusion.
A widget that ties in the media uploader to upload an image, allows me to specify a link that it goes to. Perhaps an additional one that can do a random photo of the day from the entire library with no upload options.
A Twitter widget that pulls back a configurable amount of tweets for a specific user filtered by a specific hashtag (i.e. If I put #ZZZ into a post it will go to my website, but rest wouldn’t). Preferably if it can also filter the hashtag out of the twit that would be excellent.
Your template tag shortcodes plugin is a great start towards this (I think) – A widget that is a checkbox based list of all the pages on a site which you could use to build a widget that represents the header navigation for a site. This would need to have a few configurable options about presentation style (suckerfish, sliding doors css, basic)
A widget that supports the bilingualisation functionality of qTranslate – I know this is really one that would be meant for qTranslate to build, but since I was on the widget idea train and this was the last stop….
You’re doing great things Justin!
I’d like those widgets from Widgetbox. If you’ve encountered them, try developing some that are like those. They are cute and very cool!
Justin,
You might want to look a tool I created that turns some php code into a wordpress widget. It would easy to nab a piece of word press code and turn it into a widget.
Once you have the functioning php code you want. You can turn it into a widget in just few minutes.
You can find it as widgetifyr.com. It’s totally free.
Let me what you think.
Thanks
Glenn
I am not new to wordpress but new to these widget things in wordpress. I just love widgets because it brings boring site to life and thats what the widget should do. Something to click on, something to play with, and something to learn. Salute to those coders who built that thing..
Rama
How about a wp widget for a business catalog, like a restaurant menu. Categories drop down into items, maybe when you mouse over it ajax’s a little description under it.
Hello there,
I know this article is quite old but since I am frantically looking for a special widget for ages I thought I might just give it a try – who knows maybe you’re still in programming mood?
My favorite Widgets are those which list the pages and the categories in the sidebar. In addition there is one widget which lists the most recent articles. But what I am really looking for would be a widget which actually displayes the most popular articles. Where most popular meanst that they got the most pageviews.
I am not quite sure how this could be accomplished or if it is even feasible, but if so I would be really really eager to use it. I’m still hoping that there is a solution and that I just didn’t see it.
Thanks for your great offer and support.
-Joe-
@Joe:
Two plugins working in conjunction can do that easily:
http://wordpress.org/extend/plugins/stats/
http://wordpress.org/extend/plugins/wordpresscom-popular-posts/
For the first, you’ll need to sign up for a WordPress.com account, where you can get an API key. But it’ll work on any self-hosted site.