Leszek from Free Geography Tools left a comment that really made my day:

Who Sees Ads is one of a very small handful of plugins I consider essential to my site. I tend to be a bit lazy about making donations for plugins I use. I’ve made a donation for Who Sees Ads. Twice. And I expect to do it again in the future. Many thanks, Ozh!

Leszek, many thanks to you!

Go to your blog admin area, head to the "Write" page, move your mouse over the "Add media" tiny icons: you probably had noticed it already, WordPress 2.5 comes with a neat tooltip function. Using it in your own plugins is so easy that a hamster could do it.

First, in the HTML output of your plugin page, add a new classname — say "givemesometips" — to some elements, and give them a meaningful title.

  1. <p>The question mark hides a tooltip! <span class="givemesometips" title="Hello, I am a tip">?</span></p>
  2. <p>This image too! <img src="someimage.gif" alt="some image" title="I am a tip, too!" class="givemesometips" /></p>

Now, somewhere in your plugin page, add this Javascript call:

  1. <script type="text/javascript">
  2. jQuery(document).ready( function() {
  3.     jQuery('.givemesometips').tTips(); // tooltipize elements with classname "givemesometips"
  4. });
  5. </script>

And that's it. If your hamster cannot do this, consider upgrading it! For your convenience, here is a sample dummy plugin with tooltip examples in the page it creates under the Setting menu. Have fun!

If you are experiencing problems with Absolute Comments, it's mostly because of a conflicting plugin. I've put this troubleshooting guide to help you identify it.

I've also improved a few things on Absolute Comments, regarding error handling and reporting. Now, instead of a silly javascript alert box telling that something went moo, you can actually have a more detailed error message that will help you identify the culprit. Not sure why I didn't do this on first release :)
It went moo.

Last thing: I moved all your personal options to a separate external file my_options.php, so that your settings don't get overwritten when you update. (To the question "why didn't you just add an admin page", I'll answer that it's not really worth the screen real estate: you're supposed to pick a few settings and never look back at them, so why waste some space in your already cluttered admin menus)

Anway, go get Absolute Comments 2.1 now.

Edit: Blah. Fifteen minutes later I realize that the external options file will be lost anyway if you upgrade via the built-in plugin updater, which starts by deleting everything. I'll add an admin panel on next update, if any. Doh.

One of the mostest ubercoolest feature in WordPress is its ability to warn you about an outdated plugin you might be running on your blog, so you can upgrade in a snap and as soon as a new version gets off the press (assuming this plugin is hosted on wp.org/plugins)

The thing is: it's cool… when it works. After updating my own plugins recently to make them WordPress 2.5 friendly, I noticed that my "Manage Plugins" page was not warning me about new versions. Me. Their very genitor. What a shame. After a bit of testing and abusing the API server from wordpress.org, I realized that there are a few innocent things you can do, both as a plugin coder and a user, that will prevent the update system from working as intended.

I found four checkpoints to make sure everything will work as expected:
Read more to learn to count to four, and for a tool to help!

Adding javascript into an admin page is a critical part of plugin coding. Critical, because it is both trivial and probably reason #1 why it will conflict with other plugins if not done properly. When their plugin needs javascript, Good Plugin Coders™ have to make sure of the following points:

  • add javascript only once: if you need prototype.js, don't add it if it's already included
  • add javascript only on your plugin page: don't load yourscript.js in every admin page (with hook 'admin_head') including on other's plugin pages.

Doing so is hopefully very easy : Read More

Yet another plugin of mine that gets a revamp: Who Sees Ads, your all time favorite ultimate ad management plugin, is now WordPress 2.5 ready.

Who Sees Ads: the Ultimate Ad Management Plugin

For those who don't know it, let me quickly describe this baby :

  • Easy ad management: inline or in PHP templates, inserting your ads is now a handy one-liner.
  • Advanced display rules: chose what conditions will trigger the ad displaying. Search engine visitor? Regular readers? On home page only? Just for American readers? You name it.
  • Visual interface: a very intuitive and visual interface allows for easily creating ads and selecting display rules.
  • Ad wizard: a wizard will create example rules as examples, allowing for quick grasping of how things works
  • Adsense & YPN compliancy: per Terms Of Use, Adsense and Yahoo Publisher impose restrictions (maximum number of ads of a particular type, no ads on error pages, etc). Who Sees Ads fully complies to these restrictions.
  • Admin Click Safety: Adsense and Yahoo ads can be replaced by placeholders when viewed by the blog admin, to prevent accidental clicks on their own ads.
  • Rotate ads, display ads randomly, display ads only between noon and tea time, display greetings to your new visitors, display special notice to your regular readers, display anything to anyone depending on anything you'd like.

This is, in my very humble and completely unbiased opinion, the best ad management plugin, bar none. Don't know it yet? Try the demo. Then download Who Sees Ads, your readers deserve to be treated with individual care! :)

Sometimes, you stumble upon a cool Flickr photo and only know its static URL (something like 14488551_4945c8ea17_b.jpg). You'd like to go to the photo Flickr page (ie this), to know more about the author, and discover other pictures of the same kind? Bookmark this bookmarklet:

Flickr Photo Page

Quick explanation: Flickr image filenames in static URLs are like this: photoId_someHash_size.jpg. The above bookmarklet takes you to flickr.com/photo.gne?id=photoId.

I’ve just discovered that Twitter accepts GET parameters as a quick way to update your status. For example, this simple link: I’m reading http://planetozh.com/blog/ (4) «

What a productive week-end! I'm delighted to announce the availability of a new version of Absolute Comments, the plugin that lets you reply to comments from the one and only "Manage Comments" page.

Absolute Comments for WordPress 2.5

This update, stamped "version 2.0", is obviously to make the plugin work with WordPress 2.5 and (hopefully) above. This is a mandatory download for anyone with a blog that gets more than two comments a year, so go and get Absolute Comments!

Rejoice, community and blog network admins: next version of my Admin Drop Down Menus will support WordPress Mu (the thing that powers wordpress.com)

By default, the top dark bar of the admin UI in MU is replaced with a list of the blogs you're currently running (or at least have some privileges in):
MU blog links

My plugin will fill this space with the same menus as in the regular WordPress version, plus a drop down list of all your blogs:
MU blog links — with the Admin Drop Down Menus

It's currently working smooth on my Mu test blog, running Mu's trunk which is marked as unstable or even, for some files, as "*DON'T SVN UPDATE!*" :). I'm waiting for something more polished to be released and will eventually publish my plugin update. My recent experiences have taught me not to release plugins developed against an unstable, since things are too likely to change and break your work.

Mu users and admin, stay tuned! (and feel free to ping me if I forget about this, I'm not a regular Mu user)