Magnus Rahl
Optimizely
Feb 6, 2009
visibility 5961
star star star star star
(0 votes)

Social bookmarking as Dynamic Content

Many of you have probably built sites with social bookmarking icons or similar (“Share on facebook” etc.). Just for fun I decided to create an easily extendable implementation for this, and to do it as Dynamic Content to enable editors to place whatever social bookmarking icons whereever they like.

Description

Here is a screen dump of an example page using my QuickLink Dynamic Content:

quicklink

The broken images seem to be broken because they are all gathered from their respective sites, and my browser seems to be handling this great amount of connections/lookups badly. I advice you to cache the images locally in your site (their location are set in a config file).

In edit mode the editor simply selects what implementations to include, so by adding the QuickLink dynamic content several times to a page with different icons enabled the layout can be controlled a bit more. What type of html element the icons are rendered in is also configurable (standard is ul/li).

profileinfo_edit

Extensions

All the icons in the first portion of the image above are generated by a special implementation of the IQuickLink/IQuickLinkFactory interfaces that is purely configuration driven. To add another bookmarking service, provided it follows the same pattern (a posting url with the page url and title in the query string) you merely have to add a new section in the QuickLink.config file.

The more advanced implementation last in the example is included mostly for demonstration how to implement the interfaces, the default configuration driven setup is probably enough for many purposes.

Download

Both compiled dlls and source are available here. N.B. the QuickLink dynamic content uses the DynamicContentBase also available from the same location.

Feb 06, 2009

Comments

error Please login to comment.
Latest blogs
Surviving a Dirty Feed. Part 3: Error Handling and Event Batching

Committing a 250,000-row Optimizely catalog import row by row, returning a per-row failure report, and coalescing catalog events into one per batch.

Stanisław Szołkowski | Oct 16, 2026 |

Building UI Extensions for Optimizely SaaS CMS

Introduction Developers have been extending the functionality of Optimizely PaaS CMS for years using addons built in C# and deployed as NuGet...

Mark Stott | Oct 15, 2026

Cheapskate AI Translator: Because Translation Should Not Require a Second Mortgage

There is a particular kind of software project that begins with a detailed architecture document, a product roadmap, and a carefully assembled...

Linh Doan Cuu | Oct 15, 2026

Computed Fields in CMS 13 Content Contracts with Optimizely Graph

Content Contracts in Optimizely CMS 13 allow different content types to share a common structure when querying Optimizely Graph. But what if the...

Mardy | Oct 14, 2026