Magnus Rahl
Feb 6, 2009
  5749
(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

Please login to comment.
Latest blogs
Creating an admin tool - unused assets

Let's make an admin tool to clean unused assets and see how to extend your favorite CMS with custom tools and menues! We will build a tool step by...

Daniel Ovaska | Apr 15, 2026

Running Optimizely CMS on .NET 11 Preview

Learn how to run Optimizely CMS on the .NET 11 preview with a single-line change. Explore performance gains, PGO improvements, and future-proofing...

Stuart | Apr 15, 2026 |

Your Optimizely Opal Is Probably Burning Carbon It Doesn't Need To

Four patterns Optimizely practitioners could be getting wrong with Opal agents: inference levels, oversized tool responses, missing output...

Andy Blyth | Apr 15, 2026 |

Optimizely CMS 13: A Strategic Reset for Content, AI, and Composable Marketing

Optimizely CMS 13 is not just another version upgrade—it represents a deliberate shift toward a connected, AI-enabled, and API-driven content...

Augusto Davalos | Apr 14, 2026