Tags, Writer, and WordPress


Ever since WordPress 2.3 hit the scene, adding native tagging support, there’s been some (understandable) confusion as to whether Windows Live Writer supports tags, and how it relates to WP native tags. Hopefully this post will clear things up.

If you’re using WordPress 2.3.1 or later, look for either Keywords or Tags near the bottom of the screen. You may first have to press F2 (or click the little up-arrow) to expand the property panel.


Better yet, if you’re using WordPress 2.7 (or WordPress.com) and Windows Live Writer 2009 RC or later, you’ll get tag autocompletion! The tags field also moves upwards, adjacent to the categories field.


The same instructions apply for BlogEngine.NET, though I don’t think a build has been formally released yet that supports tag autocompletion.

The confusion stems from the fact that there is also an older, non-native style of tagging that was in common use in 2006 when we launched Writer. At the time, none of the popular blog platforms had any built-in tagging features, per se—it was all about categories. Tagging usually meant manually inserting HTML links into the actual body of each post, with rel="tag" attributes on each link. Technorati and other search engines could detect these tags, but because it was all commingled within the post body, the actual blogging platforms could not.

The second public beta of Writer added support for this primitive form of tagging, and it remains in the product to this day. If you do “Insert Tags” from the main menu, edit toolbar, or sidebar, you’ll get this kind of tagging. And if your blog software supports native tags, as WordPress does, this is almost certainly not what you want.

It’s definitely bogus that we have two related-but-different tagging features, without making it easy for the user to know which to use. We didn’t have time to solve this problem for WLW 2009, but it’s quite possible we will do something about it in a future release.


16 Responses to “Tags, Writer, and WordPress”

  1. I have recently been frustrated by the same confusing situation in MarsEdit. There are at least 4 inputs in the UI that are commonly used for the same conceptual idea: “Tags”, “Keywords”, “Categories” and “Technorati Tags.” Admittedly, there are good arguments for the distinction between categories and tags, but many users treat them interchangeably.

    Another issue, I’m sure you can appreciate, is blogging systems such as Blogger that support only one classification concept. It’s unclear whether it’s more ideal to expose Blogger’s “labels” as Categories or Tags. Depending on how users are applying labels, it might be conceptually closer to one or the other.

  2. @Daniel, for the latter I think the ideal is to call them “Labels” when a Blogger blog is active, and for the control behavior to approximate what you get on the Blogger web form. I hate having to ask users to make a semantic mapping from “Labels” to either “Categories” or “Tags”. Forced to choose, though, I’d definitely go with Tags. (Unfortunately WLW currently maps them to Categories, but that’s just a historical accident.)

    The first issue, though, we’re still groping with. At least with our wlwmanifest.xml files, we make it easy for blog platforms to tell us which of these we should show or hide (except for Technorati style tags).

  3. I think I agree, but it’s important to remember that the very reason many people use desktop applications like ours is because they don’t like they way the editing UI of the blog system works. So I’m not so sure about striving to emulate the Blogger label presentation UI (even if it’s a good design). I think it’s probably more important to users that they see consistency in the UI across the variety of blogs they are editing.

  4. Good point–I guess like everything else it’s a matter of balance. It might be that Writer naturally skews more to the side of less-consistency-more-familiarity than MarsEdit, as the median Writer user is probably a lot less tech savvy than the median MarsEdit user.

  5. I clearly remember I seen autocompletion with my BlogEngine.NET installation in latest WLW. BTW, I’m one of very few people actually running BlogEngine in Mono – after I fixed some bugs, it works.
    WLW works really smoothly with it.

  6. 6 russell

    Thanks for your links Joe. On this one – I use Calais tags via Tagaroo WordPress plugin – will this synch up in some way with that and similar projects?


  7. russell–sorry, doesn’t seem like Tagaroo would work. Zemanta has a WLW plugin though.


  8. I use ExpressionEngine as CMS and Metaweblog API connnects it with WLW.
    I have several questions.
    1. In my EE panel i have 3 fields for the entry: summary, body and extended. In WLW using wlwmanifest.xml I can comfortably format text that is then placed into the body field, but It is so hard to format text in excerpt window (this teext is placed into summary field).
    The excerp window (in Russian “Отрывок”) is too small and doesn’t have no web layout.
    but i usually need to edit summary text: on my main page I show only summary field, and I use body field if the entry is long.
    The question: can I use all the abilities of WLW for my summary field (excerpt)? How do you edit you text that is shown on the main page (not under the link Read More)?
    2. For seo links in WordPress you can use slug, but in EE this field is named URL title. This URL of the entry is nade automatically in EE and I can’t control it. Besides there are difficulties related to the russian language: the URL link is not established (it is empty) when the title of the entry is in Russian.
    3. Does WLW support custom fields? Or maybe it’s impossible because I use Metaweblog API.
    4. When I Publish draft the entry is posted as Open, but I need Closed arcane entry.

  9. 9 interface

    Using the Writer RC (and wordpress.com) if you select the option “Remind me to add tags before publishing” it seems that you still get warned that you haven’t added tags even if you have (in the field to the write of the Categories field).

  10. @interface–yeah, that’s broken. It only checks for the older kind of tagging. 😦

  11. @bestann:

    1) No, Summary text is text-only. Most blogs (but not all) use main/extended to do what you’re doing, which is available in Writer (Format | Split Post, or the equivalent toolbar command) if you set supportsExtendedEntries=yes in your manifest.

    2) There shouldn’t be any reason why EE couldn’t use the same Slug field as WordPress does. It’s called wp_slug and you can turn it on in the manifest using supportsSlug=yes.

    3) Nope, sorry, no custom field support at all in WLW yet.

    4) That sounds like a bug in EE… you can have their developers contact me if they need any help.

    Hope that helps…

  12. I am missing the Slug field under “options”. Installed Windows Live Writer 2009 and use WordPress.

    Joe, could you please show an example where in the manifest supportsSlug=yes should be added. Thanks a lot in advance.

  13. Hans, is your WordPress blog heavily customized? I don’t see the wlwmanifest.xml file at all. Usually it’s under the wp-includes directory.

  14. I’m using WordPress WordPress 2.8.2 and Windows Live Writer Build 14.0.8050.1202 en, but the tag autocompletion isn’t working. Any ideas what I’m missing?

  15. Thanks for your links Joe.
    I use too ExpressionEngine as CMS and Metaweblog API connnects it with WLW.

%d bloggers like this: