At least twice a month we discover some new server that has added support for Windows Live Writer. In many cases it is some up and coming server that is big in a local market and is starting to break out and expand its user base. The current trend seems to be a CMS product that has added blog support and not some new blog server. Since Live Writer supports many common blogging application program interfaces (API) things just magically work. In many cases the hardest part is to do the authentication for a user with the server.
This last week we got an internal request on how to add support for Writer by someone that was writing a DIY blog server and one of our developers, Will Duff, put together the following set of links on how a developer can implement support for Live Writer in a server project.
The first thing you need to do is implement one of the common blogging API that Live Writer supports. Current Live Writer works with the following APIs:
You also need to implement RSD (Really Simple Discoverability) since this is what Writer uses to detect which API your blog server has implemented.
Lastly, while optional, we encourage the use of a Writer manifest file on the server. You can add customizations that are server specific and let Writer know about them. Blog Provider Customization API. Customizations include:
- Defining the subset of weblog features supported by the weblog. This allows providers to implement any subset of the core XML-RPC based weblog APIs (MetaWeblog, Movable Type, or WordPress) and have Writer’s UI correctly respect this subset.
- Provide the correct URL entry points for viewing and managing the weblog as well as editing posts online.
- Define a custom icon and watermark image that appears in the Writer Sidebar
- Define custom buttons that can link to web-pages, display content in a drop-down, and notify the users of new content and other online activity.
- Define WYSIWYG editing templates for the active weblog theme.
I am sure you can find pointers out there on how to add one of the APIs to what you are developing. Here is an example of how to implement MetaWeblog API in ASP.NET