Ja, ich gebe es zu, ich mag News-Portale mit Voting-Funktionen wie digg, yigg oder Ähnliche. Im deutschsprachigen Raum, und in dieser Sprache schreibe ich nun mal, sieht es in diesem Bereich aber eher mau aus. Einen echten Ableger von digg wird es hierzulande wohl nicht geben und den anderen Diensten ist der Durchbruch noch nicht recht gelungen.
Ein wie ich finde interessanter Vertreter dieser Gattung ist wikio.de aus Luxemburg, die mit dem Portal unter anderem in Frankreich, Italien, Spanien und Großbritannien vertreten sind. In der letzten Zeit gab es über wikio immer wieder mal rege Diskussionen bis hin zu Vorwürfen des Content-Klaus, aber sehe das etwas gelassener, denn schließlich schreiben wir ja für die Leser "da draußen" und so ist es durchaus legitim, dass Content-Aggregatoren die Artikel verwerten und verbreiten, auch wenn echte Backlinks fehlen. Dafür habe ich meinen Content ja schließlich auch unter die Creative-Common-Lizenz gestellt und die wird eingehalten.

So sauber und stylish wie die wikio-Web-Seite sind auch die Voting-Buttons, die man auf der eigenen Seite einbinden kann. Nichts erinnert in das HTML- und CSS-Chaos der Yigg-Buttons, die ich inzwischen wieder von der Seite genommen habe, weil noch nicht mal der IE7 sie korrekt darstellen konnte. Der einzige Wermutstropfen bei der Implementierung der wikio-Buttons ist, dass wikio für den geneigten Webmaster lediglich etwas Code für Wordpress-, Blogger- und DotClear-Systeme bereitstellt. Wieder einmal Fehlanzeige in Sachen ASP.NET.
Da der PHP-Code des Wordpress-Plugins recht simpel ist, habe ich mich entschlossen Abhilfe zu schaffen und ein Web-Server-Control zu entwickeln, das ASP.NET 2.0-Webmaster leicht in Ihre Seiten einbinden können. Herausgekommen ist WikioButton. Den Download, inklusive Source-Code, findet ihr am Ende dieses Artikels
Das Image-Control aus System.Web.UI.WebControls kann hat, wie ich finde, einen kleinen Schönheitsfehler: es setzt beim Rendern der angegebenen ImageUrl das src-Attribut nicht so, wie man die URL angegeben hat. Aus
http://www.meinedomain.de/getimage.axd?parameter1=xyz&¶meter2=123
wird
http://www.meinedomain.de/getimage.axd?parameter1=xyz&parameter2=123
Ein kleiner, aber feiner Unterschied. Grund für diese Auflösung des Ampersand, scheint der Aufruf der Funktion ResolveClientUrl in der Image-Control-Methode AddAttributesToRender zu sein.
Nun rendern die gängigen Browser das Bild zwar richtig und ansonsten kann man dem mit einer URLEncode-Methode begegnen, aber wer es korrekt haben mag, dem bleibt nichts anderes übrig, als ein eigenes Server-Control von Image abzuleiten und darin diese Methode zu überschreiben.