Thanks to Chris Pirillo for bringing the problem to my attention and working through it with me.
I've completed a major rewrite of my OPML browser, Optimal.
I didn't manage to document all of the changes, they were so numerous. Highlights are:
- Object-oriented reimplementation, making it more portable to other applications
- Same code may be used as a WordPress plugin -- replaces the OPML Renderer plugin for WordPress
- RSS items now include descriptions, so you can browse the feeds without subscribing or visiting the home page
- New widget generator to generate HTML to include Optimal on your web site
Version 0.6 of the OPML Renderer Plugin for WordPress has been released.
This release primarily fixes some bugs and enhances some functions. In the works for the next release is inclusion of RSS feeds, which would enable feed grazing.
I've been monkeying around with rendering OPML in WordPress. Finally, I learned how to create a WordPress plugin, so I've created OPML Renderer, a plugin that renders valid OPML from any source as an expandable/collapsible list.
Thanks to iconophobia and the inlineRSS plugin for some code and ideas.
OPML Sidebar Revisions
I made some revisions to my OPML sidebar hack.
I added a more graceful failure when the checkCache function cannot retreive the OPML file, and I also changed the $maxage variable so that its value can be passed via the function call.
Most importantly, I've renamed the file from opmlSidebar.php to opmlHtmlXslRenderer.php. Why? Because I'm also using it to generate pages in WordPress!
This is a tweak to the WordPress 1.5 comment moderation function that changes the pluggable function "wp_notify_moderator" to notify the author of the subject post, rather than the site administrator, that a comment is awaiting moderation. If the author does not have an email address or does not possess sufficient rights to moderate comments, then the notification is sen to the site administrator.
If you look in the right column running down the main page of this website (the sidebar), you'll notice a heading for my "Blogroll." And if you examine the blogroll, you may notice this little graphic that says OPML. That's because my blogroll is being generated on-the-fly from my OPML reading lists generated by PodNova and NewsGator.