I told you my mind never stops spinning, didn’t I? Here are a few follow-up thoughts on my previous post on tags. View this as my brain dump of what I’d like tags to do in WordPress and around.
Bear in mind that I haven’t tried 2.3 yet, don’t know exactly what it does and doesn’t do, and haven’t done much homework. So (hopefully!) some of the stuff I’m speaking about here already exists. If it’s the case, please leave a note with a pointer in the comments.
Some of the stuff here might also be stupid. If it is, please tell me.
I don’t think all this should necessarily be in the WordPress core. Plugin makers, feel free to delve in here for inspiration. If I like your plugin, I’ll plug it.
Links Between Tagspaces
So, based on what I’ve understood, WP2.3 will provide a local tagspace. This means that if I tag a post “cat”, the link on that tag will take me to something like myblog.com/tags/cat. That’s cool.
But I want more.
I want the myblog.com/tags/cat page to contain configurable pointers to other tagspaces. For example, my Flickr photos tagged “cat”. My del.icio.us links. My videos. The Technorati tagspace.
See what I mean?
Somewhere, WordPress would ask me “What other tagspaces would you like links to?” and I’d enter “http://flickr.com/photos/bunny/tags/”, “http://del.icio.us/steph/”, “http://www.viddler.com/explore/steph/tags/”, “http://technorati.com/tag/” in some pretty form (we know how to do those now, don’t we?)
Some people may not want to use the local tagspace. Hell, most people who tag their posts right now point to the Technorati tagspace. An option to do so could be nice.
I’d like my local WordPress tagspace to allow tag combinations. This is the stuff I wrote about nearly 3 years ago. Del.icio.us does it: here are my links tagged “books” AND “read”.
We need more of this, particularly if we start thinking multilingual. I want to be able to point to a page containing posts I tagged “adolescents” OR “teenagers” OR “ados” or “teens”. I use all those, but I’m sure (given the nature of tagging) some posts have slipped through the cracks and have only one or two of these tags.
Less multilingual, maybe I just want to have “cats” or “cat” (sometimes I use plural, sometimes singular, and the distinction isn’t important to me in this context).
Del.icio.us does this. My local tagspace pages should have this feature too.
And how about an option to be able to see (in a click) posts tagged “cat” AND all the posts tagged with one of the related tags? (This could become a bit unwieldy though.)
The “obvious” stuff. Rename tag “stephaniebooth” to “Stephanie Booth” everywhere it is. (Flickr does this well.) Merge tags. Add a bunch of tags to all the selected posts (result of a search or by-category selection). Remove tag X from all posts which are tagged Y.
This is the kind of stuff I wanted to make possible for categories when I wrote Batch Categories, a lifetime ago. I haven’t touched this “hack” for years now, and I’ve heard conflicting information about its compatibility with recent WordPress versions. I think somebody somewhere updated it for WP2.x — if you search you might find it.
Now, this would be a source of tag spam, unless it’s for example limited to registered users of the blog, or people identified by OpenID or on a “trust list” (e.g. people who have commented on the blog before). I’ve encouraged people to open up tagging to the community on Flickr, and the feedback from those who have done it has been great. I’d like a way to do this for my blog posts, too.
I’m sure structured portable social networks have a part to play here.
Ages ago, I added keywords to my blog posts. (I now know it’s not very useful — maybe even, not at all.) Around the same time, I used Topic Exchange Channels for some of my posts, making the ITE channel visible on the post by adding a link to it (gosh, come to think of it — I hadn’t heard of tags yet, but what I was doing was some form of proto-tagging… quite impressed with myself!)
Anyway, leaving the self-congratulatory stuff aside, my wp_postmeta table contains old information about posts which has long since disappeared from this blog, but which is still there, ready to be recycled. I could turn those old keywords and ITE channels into tags with an importer.
So, how about a very “customizable” importer? I would give the meta field name I want to convert to tags, and indicate if the tag data is comma-separated, space-separated, or simply placed in multiple fields.
(For my old keywords, there is one meta field called “keywords” which contains a comma-separated list of words, whereas for the ITE channels there is one entry per channel called “ite_topic” (IIRC) with a unique word as a value — but there can be more than one channel per post.)
So, “manual importer”, anybody?
That’s All, Folks!
There, I think I’ve told you what was on my mind. Feedback welcome. And plugins. Code. Solutions.