Some significant improvements to my ActionStream plugin. The plugin can always be downloaded from that page. The changes are:
- Bugfix in how some feeds were handled (notably google reader)
- If nicknames are being displayed, they are hcards with links to your profile at that service
- Including updates from your own blog is now optional
- There is now an option to remove services you have added
- Collapsed (5 more… et al) nodes may now be expanded on link click
I am pleased to announce version 0.2 of my WordPress Actionstream plugin!
It can be downloaded from the normal place.
New this release:
- Better microformats support in the output
- Some architecture improvements and bug fixes
- There is now a sanity check for zero items or less items than requested
- Posts on the host blog are now added to the actionstream
- There is a well defined way to add stream items (say, from another plugin). Just create an array with the fields you need (be sure to specify identifier and created_on – GUID and unix time of publish, respectively) – usually includes title and url. Then instantiate an object of class ActionStreamItem and save in like so:
(new ActionStreamItem($array_data, 'service', 'data_type', $user_id))->save();
- There is now a hook for other plugins to add available services. Example:
actionstream_service_register('feed',
array(
'name' => 'Feed',
'url' => '%s'
),
array(
'entries' => array(
'html_form' => '[_1] posted <a href="[_2]" rel="bookmark" class="entry-title">[_3]</a>',
'html_fields' => array('url', 'title'),
'url' => '{{ident}}',
)
));
So first, the plugin. I have basically ported the MT Actionstream plugin to WordPress (you can see it in action on my main page). This is pretty cool, and it means we can easily share settings with other efforts.
New in this release is the ability to import a list of services from another page (like MyBlogLog or FriendFeed) using SGAPI.
Code lesson: sometimes the WordPress docs lie. They say that you pass a function name (or array with object reference and function name) to wp-cron hooks to schedule regular actions. Not true. You pass the name of a WordPress action (added with add_action).
Blogging Lesson: Blog your own work. This plugin has been covered by at least four blogs now (more than most of my stuff) and not yet by me. I just posted the plugin on the DiSo mailing list and people liked it. I’m not complaining, but I’ll definately post my own stuff up front in the future!
About time! I’ve mentioned multiple times that I wanted to turn the logic I use here for user photos on comments into a plugin. I’ve made two hacks for blogger that do this, after all, why not for WordPress?
My recent work with the DiSo project has caused this interest I had to come back, in the form of two plugins.
Plugin #1 – Avatar from URL
This plugin looks at the comment author’s URL and tries to find a suitable image. This is primarily done by looking for an hCard, but it will also use other images if no hCard I found.
Plugin #2 – AllAvatars
This plugin is what is now powering comment avatars on this blog. It detects if you have the gravatars plugin, the avatars from URL plugin, or the favatars plugin installed and tries to use the avatar those plugins would normally give (in the listed priority order) — thus allowing more avatars to display than with any one of these plugins.
It also detects if there is photo data in the user’s profile (such as data imported by my semi-released hCard Import plugin) and overrides any other plugins with that.
I have released another now plugin for WordPress! This one lets you easily generate a Focebook-like “mini-feed” of your doings online to embed on a WordPress page (like it is on my home page).
See the plugin page for more details.