technorati tags plugin
As I stated yesterday Microsoft announced Beta version of its Windows Live Writer a blog client. Most parts of this client are written in .NET and this enabled everyone to write his own plugins for it.
Today Jayson and I were chatting about lack of Currently Playing song functionality in Live Writer (it's one of cool features in BlogJet and W.Bloggar) and decided to have a competition to write its plugin for Live Writer ourselves. I started working on Windows Media Player plugin and he worked on Winamp. He could finish his job and posted about it here. But I couldn't finish writing that plugin because my Windows Media Player has some problems and I couldn't get its ActiveX reference (AxWMPLib) to work.
However I didn't want to sleep without writing a plugin and tried to write a more useful plugin to add Technorati tags to blog posts. Here I write about the process I followed to let others start coding for Live Writer. I created a workspace on CodePlex to write plugins for fun and share them with others.
Background
Technorati tags are a way to index your posts in Technorati index and get more traffic. You can simply put these tags under your posts via a simple link with rel attribute set to tag.
To start with Live Writer APIs and writing a plugin for it you need to download Live Writer SDK from here. This package contains a simple demo solution with documents about Live Writer APIs.
Steps to write a plugin for Live Writer
To write a plugin you have three options:
- Dialog
- Url
- Live Clipboard
Latest two options are out of the scope of this post but first one (which is more useful and will be more popular) is what I want to describe here.
To write a Dialog based plugin for Live Writer you have two choices to implement one of them or both:
- ContentSource
- SmartContentSource
First one is simpler and only adds a link to Insert section/menu of your Live Writer client application. SmartContentSource can help you to set more properties for your plugin by putting its visual interface on a section on your client.
In this post I implement a plugin by first choice but writing a plugin by second one isn't very different.
About the Author: