Finding Posts via Tags

Searching using tags has been on my list of things to do for a while now. I’ve been playing with some things; and I’ve put together an experimental grade search via tags. It lives here.

It works well with small tag sets (collections of, say, 100 tags or less); but starts getting a bit unwieldy with larger sets (like.. err.. mine (: I have about 350 tags on my posts).

Basically; you click on the names of tags, and a list of posts that match any of the tags is retrieved. If you click on the name of a tag a second time, then it’s removed from the list of tags and the results are updated. It uses fandangled AJAX stuff so it feels shinier than the ye olde way of doing things.

Anywho, let me know how useful you think this is on the scale of “Meh” being Meh to “OMGZ I want one” being not-Meh. Eleven is.. uh.. better than cheese.

(There’s a download, and a caveat or two here:

Ultimate Tag Warrior 2.8.7

This version of UTW is pretty much the same as 2.8.6….

…except that I’ve made a few tweaks here and there, so now it’s compatible with the latest 1.6 build of wordpress (Not sure about earlier 1.6 versions, though.)

Download hereDownload here instead | Support forum here

Ultimate Tag Warrior 2.8.6

This is release #32 that I’ve made of this plugin. Thirty Two. It’s up to about ~90kb of PHP… The first version was 7.7kb.

I was going to call this version UTW 25; but nevermind (:

Changes in this version:

– Tagyu tag suggestions are retrieved using CURL, if available; and file socks when not – some people had hosting provider issues with the file_get_contents() way it initially was. I’ve also tinkered with the escaping – smart quotes were throwing it off by the looks of things.
– The ajax driven tag-adders will accept a comma separated list of tags, so now you can add a bunch o’ tags at once.
– I’ve added another predefined format: technoraticommalistwithlabel; which is like the technoraticommalist, except it puts “Technorati tags: ” at the front of the list. Mostly, this is for use with the automagically included tags.
– There’s a new thing that’s just a little bit special.
I’ve added two template functions: UTW_ShowTimeSensitiveWeightedTagSet and UTW_ShowTimeSensitiveWeightedTagSetAlphabetical. If you use either of these functions on the date.php or archive.php files in your theme (and index.php, I imagine (: ), when you’re viewing at a date based archive; the tag cloud will only display the tags for posts within that date range. (/archives/2005/08/ displays things from August of this year in the popular list in the sidebar, for example.)

– Oooh. I’ve made this theme available for download! (I’ve taken out the gravatar bit, so I *think* the only plugin dependency is UTW) You can find it here

Download here | General plugin info here | Support forum thing here

Ultimate Tag Warrior 2.8.5

Let’s try that again (:

– This time, the database should automagically update itself (instead of breaking tags (; )
– I’ve changed the way tag suggestions are requested; so if you weren’t able to use the old way, if you could try again and let me know if it’s still a problem that would be great (:

Download here | More generic info here

Ultimate Tag Warrior 2.8.4

New Version!

– Beware: There are a bunch of new options: go to the Options > Tags page. Some of them will change the way things look.
– Edit: Beware #2: If all of a sudden tags stop saving, doing a force reinstall will make everything go (the first .zip of this version I uploaded had build numbers out of sync. It’s sufficiently late that I’ve probably made the build numbers out of sync in a different way in the new .zip d: )

– I’ve fixed the bug where text sent to for tag suggestions that contained HTML markup would have a spaz
– I’ve fixed the typo in RemoveTags() (Thanks Julio!)
– I’ve fixed the bug in GetCanonicalTag() (ditto)
– I’ve split the administration into two pages – one is configuration stuff, and lives at Options > Tags, and the other is for wrangling tags, and stays at Manage > Tags. I’ve added links from one-to-the-other, so with any luck they don’t get lost (;
– I’ve turned the automagic tags inside-out! There are now “primary” and “secondary” tag links (instead of “local” and “technorati”). Each set of tag links can have its own predefined format selected. Let me know if this causes more pain than joy!
– I’ve added custom format stuff for linking to; along with a handy predefined format gadabecommalist that will render a simple, comma-separated list of tag links into the site.
– I’ve monkied with the internals of GetFormatForType. It’s much cooler, now (: Instead of a big switch, there’s an array of items which lets me grab a format by key (And make a list of predefined formats for the options page (; On the horizon will be a convenient way of putting custom formats somewhere so that they can be called by name, without fear of changes being squished by later versions of the plugin – probably it’ll be a “make this file, put a function called somesuch in it” kind of arrangement.)

– I think that’s it! (:

Download here | Generic Info here*

* Caution: Out of Date, but I’m way too tired now; so I’ll update it tomorrow (:

Ultimate Tag Warrior 2.8.3

UTW 2.8.3 has switched to for tag suggestions instead of using Yahoo! With any luck this will produce much more useful tag suggestions (:

I’ve also added in a new predefined format, weightedlongtailvertical which is the format that I’m using for the popular tags, and on the Archives page; in this theme.

There are also a few more custom formatting placeholders for getting the percentile ranking of tags.

Download here | Generic info here

Ultimate Tag Warrior 2.8

Ultimate Tag Warrior 2.8! Free to a good home!

– Tag entry bits are now comma separated instead of space separated (Tags that contain spaces will have underscores magically added for now, though*)
– There are synonyms for tags!

I should explain the synonym thing (:

Basically, there are tags; and there are synonyms. Each are special in their own ways. A tag is the really-real version of a keyword. A synonym is a fake-tag that pretends to be a tag. A synonym can be associated with a tag via the Manage Tags page. A synonym can have more than one tag (although its behaviour is ill-defined at the moment: I haven’t done any specific handling of it yet; but you aren’t prevented from using a synonym for two tags); but if a synonym is already a tag, then sorry kiddo, it can’t be a synonym as well.

Example: If I have a… “photography” tag, and assign “photo” and “photograph” as synonyms; if I go to, then the same posts display as if I was to go to Further, if I go to, then I’ll see posts tagged with both photography and monkey (unless monkey is also a synonym, in which case I’ll see posts tagged with photography and whatever the underlying tag for monkey is).

This is just phase one of synonyms, which basically allows defining synonyms (via the Manage Tags page), and using the synonyms for pages that are requested. Phase two, will see more ways of including synonyms on pages..

The start page is here | Download here

* People who know more PHP than me: is there a way of getting $_GET values which still have the + signs and %20’s intact? I can see a way of wrangling it out of the query string; but I’d really rather avoid doing that since there are lots of ways for it to go wrong

Ultimate Tag Warrior 2.7.7

Whee. ‘Nother release!

  • I fixed the bug with related tags
  • I’ve added a new template tag, UTW_AddTagToCurrentPost($format=””) that renders a textbox for adding a tag to the current post (it needs to go inside the wordpress loop; If a named format is specfied, the contents of the page element with the id “tags-{post id}” will be replaced with the list of tags for the post, in the format specified)
  • I’ve added a few more bits for formatting
    • In custom formatting strings, %intersectionicon% draws a cute little icon, and links to the current tag(s) and the tag being rendered. (This only makes sense for tags that are displayed on a tag page rather than the index or single pages)*
    • %icons% will render a set of icons (currently Technorati, Flickr,, Wikipedia, RSS, intersection).
    • For named formats, “iconlist” renders a link to the tag followed by the set of icons
    • “htmllisticons” renders <li> tags, containing the icons followed by a link to the tag
    • “commalisticons” renders a link to the tag followed by the set of icons with a comma between tags

download here | get started here

* Adding the url as a custom formatting option seems so obvious now.. I’ll add one for the next release.

Ultimate Tag Warrior 2.7.5

New Ultimate Tag Warrior!

This version adds…
– A Force Reinstall button on the manage tags page. Clicking this will attempt to re-run all of the updates.
– There’s now a “single” template in custom formats
– The Tag Suggestions bit will now take the keywords that Yahoo! sends back, and looks for any tags which are related (i.e. if a post is tagged with one of the Yahoo! keywords, then any other tags for that post will be in the tag suggestions list)

Download here | General information page here