Ich habe keinen Account bei Facebook oder Google+ und bin nur in geringen Maße bei Twitter aktiv. Doch viele andere Netzbewohner nutzen diese Plattformen zur Weitergabe von Informationen. Daher finde ich es gut und richtig, wenn Webseiten die dazu geeigneten Share-Buttons anbieten.

Die normalen Buttons erlauben es den jeweiligen Firmen jedoch, die Besucher einer Seite auch ohne aktive Interaktion zu identifizieren und zu verfolgen. Das halte ich für nicht ungefährlich und will es nicht unterstützen. Hier kommt mir das Shariff-Projekt der c’t zugute, das eine datenschutzrechtlich unbedenklich Lösung anbietet.

Das Einbinden der Buttons in das von mir genutzte Pelican-Theme Pelican-Boostrap3 war zum Glück recht einfach. Das Ergebnis findet sich in meinem Fork bei GitHub

Shariff Dateien einbinden

Zur Nutzung von Shariff in der eigenen Web-Präsenz sind zwei Dateien notwendig:

  • shariff.min.js enthält die Shariff-Funktionen. Es reicht die min-Variante, da jQuery schon verfügbar ist.
  • shariff.min.css enthält die CSS-Definitionen. Da Font Awesome bereits eingebunden ist, reicht wiederum die min-Variante.

Shariff Buttons verfügbar machen

In Anlehnung an die AddThis-Buttons habe ich ein Template erstellt, dass die Buttons in die Seite einbindet. Außerdem bedurfte es ein paar kleiner Anpassungen in der templates/base.html-Datei und der templates/article.html-Datei.

Nutzung der Buttons

Um die Buttons zu aktivieren, wird in der pelicanconf.py die Variable SHARIFF = True gesetzt. Einige weitere Variablen erlauben die Konfiguration der Buttons:

  • SHARIFF_BACKEND_URL (siehe dazu Shariff Backends)
  • SHARIFF_LANG (de (default), en oder fr)
  • SHARIFF_ORIENTATION (horizontal (default) oder vertical)
  • SHARIFF_SERVICES (default: ["facebook","googleplus"])
  • SHARIFF_THEME (standard oder gray)
  • SHARIFF_TWITTER_VIA (True/False, verwendet TWITTER_USERNAME)

Der Wert von data-url wird immer auf die Artikel-Url gesetzt.

Fazit

Das Einbinden der Buttons in das Template war sehr schnell getan. Das Ergebnis meiner Bemühungen kann man auf diesen Seiten sehen. Ein Pull-Request geht an den Maintainer, sobald ich sehe, dass alles wie erwartet funktioniert.



Comments

comments powered by Disqus