One of the greatest blog engines based on .NET is BlogEngine.NET with a lot of advantages to it’s competitors. Unfortunately there aren’t as much themes and plugins available as for other engines like DasBlog or Wordpress. One famous plugin for Wordpress is Sociable, “which adds social media buttons to your posts, and does so easily, and beautifully”. There are over 100 bookmarking services integrated and you can choose in your admin-interface which you want to show under your articles for your users.
I tried some of the available social bookmarking extensions for BlogEngine.NET but none had satisfied me. Sociable looks good but it’s written in PHP and only available for Wordpress. It’s rendering it’s output with two simple div’s and a unordered list with some simple stylesheets. I made a blank extension and started to implement this output for BE.NET. The most bulky part was the adoption of all those bookmark services. To make adding new services easier I made a struct with properties for:
- name of the service
- url for adding links with placeholders
- name of a service-specific css-class
- filename of the icon
- a unique identifier
So adding a entry e.g. for del.icio.us is as simple as this:
new SociableBEEntry(++i,
"del.icio.us",
"http://del.icio.us/post?url=PERMALINK&title=TITLE",
"delicious.png")
Currently all bookmarking services of Sociable are integrated plus “msdn Social”, the social bookmarking service from Microsoft for developers.
This is the first version of SociableBE (a combination of “Sociable” and “BE” for BlogEngine.NET) so there is no shiny web2.0 interface with drag & drop of the used services in the admin-panel like in the original plugin. My main focus was to afford a simple interface for choosing the bookmarking services you want to use, so there are two ListBoxes with a add- and remove-button. Two other buttons (plus and minus) are for re-ordering the enabled services. There are also two input fields for the tagline and the image-path. One flaw is the static path to “~/SociableBE/” for the admin-page, the css-file and the loading-animation. Best is when leaving the images in this folder, too, and don’t touch the Image-Path setting. ;-)
You have full control over the design editing the css-file. For most cases it should be ok. Currently the extension is rendering valid xhtml 1.0 transitional code. It’s not strict-valid because I’m using the target-attribute for the generated links. I will add a option to disable this behavior in my next release.
Do you have other suggestions you would like to see within this extension? Know a bookmarking-service yet missing? Just leave a comment or write me a short mail and I will schedule it perhaps for one of the coming updates. Any other great Wordpress plugins you would like to see adapted for the BlogEngine.NET? Give me a hint and if I can take advantage of it I will see what I can do. If you are using SociableBE on your blog I would appreciate a short notice via email, comment or twitter (@anheledir) – I’m a statistics-junkie and would love to see who is using it. :-)
Screenshots:
Install-Instructions:
Just extract the downloaded zip-archive to your BlogEngine.NET root-directory and log in to your admin-panel to configure the extension. It’s just as simple as copy’n’paste.
Download: