Plugin-Vorschlag: Social Links / Shariff

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
Post Reply
mitch
Regular
Posts: 22
Joined: Tue Mar 15, 2016 8:57 pm
Contact:

Plugin-Vorschlag: Social Links / Shariff

Post by mitch »

Mahlzeit!

Da ich selbst nicht dazu kommen werden, wollte ich hier mal fragen, ob jemand Lust hat, sowas zu bauen :-) Vermutlich ist der Aufwand für Paketierung und Administrationsoberfläche höher als der eigentlich Plugin-Inhalt, jemand der fit in solchen Dingen ist, kriegt das definitiv schneller hin als ich.

Aber worum geht es?

Es gibt das Projekt Shariff, das Social-Link-Buttons (Teilen mit Twitter, Facebook, …) bereitstellt, dabei aber die Privatsphäre schützt. Deren Trick ist, dass sie nicht über die APIs der Communities gehen, sondern deren Submit-Formulare aufrufen.

In der einfachsten Variante (ohne Backend, um z.B. die Anzahl der Likes anzuzeigen) ist das dann nur ein http-Link auf eine spezielle Seite z.B. bei Facebook, die als Parameter die Quell-URL mitgegeben bekommt. Die Facebook-Seite enthält dann ein Webformular, in der man die Nachricht eintippen kann, dort wird die User-Authentifizierung gemacht und dort liegt ein Haufen JavaScript – damit muss man sich also nicht selbst herumschlagen.

Datenschutztechnisch natürlich ganz hervorragend: Die eigene Wbseite enthält nur einen Link auf eine Facebook-Seite, dafür muss man keine Absätze wegen Cookies und Datenweitergabe an Facebook, Twitter, etc. bei in die Disclaimer aufnehmen. Macht man für einen einfachen popeligen Link auf z.B. die Wikipedia oder SPON ja auch nicht. (Einzig übertragenes Datum ist das, was in der URL steht, das sieht man ja vorher im Link und wenn ich explizit auf Teilen drücke, dann ist es logisch, dass ich die zu teilende URL mitgebe – aber da müssen sich die Juristen streiten. IANAL. :roll: )

Ich habe etwas ähnliches auf meiner Webseite erfolgreich umgesetzt, sogar komplett ohne JavaScript: Die Social-Links für Facebook, Reddit, Twitter und Google+ lasse ich mir einfach statisch in der entries.tpl hineingenerieren, ganz grob (ohne Icon und bunt) so:

Code: Select all

<a href="https://twitter.com/intent/tweet?text={$entry.title_rdf|escape:'url'}&url={$entry.rdf_ident|escape:'url'}">Bei Twitter teilen</a>
(vollständiger Code hier am Artikelende)


Und jetzt die Frage: Möchte das jemand in ein Plugin kippen? :D
Ich selbst bin versorgt (ich habe eh an meiner entries.tpl geschraubt), aber das könnte ja auch für andere von Nutzen sein. Der Kern der Lösung besteht tatsächlich nur daraus, in einem Artikel ein paar generierte Links einzufügen, der Rest ist Paket-Drumherum, Admin-Oberfläche usw. – alles Dinge, die ich nicht kann.

Vielleicht schüttelt da ja jemand was aus dem Ärmel 8)

Ansonsten einen Gruß in die Runde und weiter so!
Christian

Code: Select all

READY.
█
onli
Regular
Posts: 2825
Joined: Tue Sep 09, 2008 10:04 pm
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by onli »

Wir haben ja im Plugin für social buttons (findmore) die Vorgängerversion von shariff schon umgesetzt, als heise zum ersten mal ihren Ansatz veröffentlicht hatte. Shariff hieß das damals noch nicht, abgesehen vom neuen Namen gäbe es auch neue Vorteile?
yellowled
Regular
Posts: 7111
Joined: Fri Jan 13, 2006 11:46 am
Location: Eutin, Germany
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by yellowled »

onli wrote:Shariff hieß das damals noch nicht, abgesehen vom neuen Namen gäbe es auch neue Vorteile?
Ja.
  • Wir haben – meine ich zumindest – noch die 2-Klick-Lösung. Shariff ist eine 1-Klick-Lösung, die trotzdem datenschutzkonform ist
  • Die Shariff-Buttons nutzen einen Iconfont und CSS, kommen also – im Gegensatz zu den 2-Klick-Buttons, meine ich – ohne Grafiken aus (Stichwort skalieren, Stichwort HDPI).
  • Aus dem gleichen Grund dürften sie sich erheblich besser in moderne Designs einbinden (siehe Demo, sie sind optisch einfach dezenter) oder anpassen lassen, was ggf. nicht mal nötig ist, weil sie anscheinend Themes haben. (Die alten Buttons sind schon schwierig in Layouts gerade zu ziehen.)
  • Accessibility; die Shariff-Buttons nutzen z.B. WAI-ARIA-Attribute (ich guck jetzt nicht extra nach, ob die alten – die ich selbst nie benutze – das auch taten, wage es aber zu bezweifeln)
Es scheint mir auch so, als unterstütze Shariff mehr Dienste, aber das mag an unsererer Implementation liegen.

YL
mitch
Regular
Posts: 22
Joined: Tue Mar 15, 2016 8:57 pm
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by mitch »

Ah, das findmore-Plugin kannte ich noch gar nicht. Aktuell ist die "Überschrift" in der Plugin-Liste
Show links to services like Facebook, Digg, Technorati, del.icio.us, spread.ly etc related to your entry – beim Durchscrollen der Liste bin ich da nie hängengeblieben. Vielleicht könnte man da in der Überschrift oder der Pluginbeschreibung die Begriffe "Social Media" und "Share Button" oder so ähnlich noch ergänzen.

Zumindest ich habe auf den ersten Blick nicht durchschaut, dass mit dem Plugin sowas gemeint ist ;-)

Gruß
Christian

Code: Select all

READY.
█
onli
Regular
Posts: 2825
Joined: Tue Sep 09, 2008 10:04 pm
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by onli »

Guter Hinweis. In https://github.com/s9y/additional_plugi ... 1d437b5444 angepasst. Hoffe das klappt mit der Zeichenkodierung. Generell braucht das Plugin aber mal wieder ein Update, außer Shariff einzubauen könnte man auch nicht mehr populäre Seiten wie Digg rausnehmen oder zumindest weniger wichtig erscheinen lassen, und das erwähnte spread.ly scheint gar nicht mehr zu existieren, sowas müsste raus. Maintainer gesucht :)
yellowled
Regular
Posts: 7111
Joined: Fri Jan 13, 2006 11:46 am
Location: Eutin, Germany
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by yellowled »

yellowled wrote:Wir haben – meine ich zumindest – noch die 2-Klick-Lösung.
Gerade angeguckt: Ja, stimmt. 2-Klick-Lösung für Facebook und Google+, außerdem noch spread.ly, was aber, wie Malte schon richtig vermutete, mausetot ist. Das scheint auf weitere Dienste zuzutreffen, die Findmore noch anbietet, ich gehe die gleich mal alle durch.

Die unterstützten Dienste von Shariff sind übrigens Twitter, Facebook, Google+, LinkedIn, Pinterest, Xing, WhatsApp, Mail, AddThis, Tumblr, Flattr, Diaspora, Reddit, StumbleUpon und Threema. Das sind ein paar Dienste, die Findmore (auch ohne 2-Klick-Schutz) nicht unterstützt (weil es sie z.T. vermutlich noch gar nicht gab, als Findmore zuletzt ernsthaft aktualisiert wurde).

YL
yellowled
Regular
Posts: 7111
Joined: Fri Jan 13, 2006 11:46 am
Location: Eutin, Germany
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by yellowled »

yellowled wrote:Das scheint auf weitere Dienste zuzutreffen, die Findmore noch anbietet, ich gehe die gleich mal alle durch.
Wow. Da sind mehr tot als aktiv, und das z.T. schon ganz schön lange. :shock:

* FriendFeed: April 2015 abgeschaltet
* mixx.com: Dezember 2011 in einen anderen Dienst übergegangen
* Bloglines: Anfang 2015 eingestellt
* Technorati: Funktionalität existiert nicht mehr (seit Mai 2014?)
* Furl: April 2009 eingestellt
* myweb2/Yahoo: Domain existiert nicht mehr
* Blinklist: Bookmarking existiert nicht mehr
* Spurl: existiert nicht mehr
* Simpy: April 2010 eingestellt
* Wist: existiert nicht mehr
* Mister Wong: seit August 2013 ein Modeportal(WTF?)

Wann und wieso Spreadly die Grätsche gemacht hat, kann ich nicht ergooglen, aber das kommt noch dazu. Und über den (heutigen) Wert/die Bedeutung von einigen der restlichen Dienste, die Findmore anbietet, kann man auch diskutieren …

YL
onli
Regular
Posts: 2825
Joined: Tue Sep 09, 2008 10:04 pm
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by onli »

Führt zum generellen Problem: Eigentlich ist das Plugin wichtig genug um einen eigenen Maintainer zu haben. Die alten Dienste müssten aussortiert, die bestehenden auf Shariff umgestellt. Und ja, es muss um die großen aktuellen Netzwerke gehen, FB Twitter G+… Ich kann das natürlich mal aufräumen, aber eine Dauerlösung ist das nicht.
yellowled
Regular
Posts: 7111
Joined: Fri Jan 13, 2006 11:46 am
Location: Eutin, Germany
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by yellowled »

onli wrote:Die alten Dienste müssten aussortiert, die bestehenden auf Shariff umgestellt.
Ich würde ehrlich gesagt vorschlagen, dieses Plugin als deprecated zu markieren und ein komplett neues Plugin für Shariff zu schaffen, das es ersetzt.

Findmore hat ein Smarty-Template (das Shariff IMO nicht brauchen wird). Die Dienste, die dort übrig bleiben und nicht durch Shariff ersetzt würden, sind – IMHO natürlich nur – zu vernachlässigen, warum also weiter winzige PNG-Icons dafür anbieten? Ich glaube, es wäre mehr Arbeit, das alte Plugin auszumisten …

Die Integration von Shariff sieht mir – zunächst mal, es geht komplizierter – recht simpel aus. Es muss
  • das Shariff-CSS (optimalerweise in die serendipity.css) eingebunden werden
  • das Shariff-JS im Frontend eingebunden werden
  • in jeden Artikel ein <div> mit ein paar data-Attributen gemäß den Einstellungen in den Plugin-Optionen ausgegeben werden
Das wäre erstmal „die Pflicht“. In der Kür könnte man dann noch das PHP-Backend einbauen, das die Anzahl der Shares in den diversen Netzwerken zählt, aber das wäre IMO optional.
onli
Regular
Posts: 2825
Joined: Tue Sep 09, 2008 10:04 pm
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by onli »

Wenn es so einfach ist, werde ich eine erste Version davon bauen.
yellowled
Regular
Posts: 7111
Joined: Fri Jan 13, 2006 11:46 am
Location: Eutin, Germany
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by yellowled »

onli wrote:Wenn es so einfach ist, werde ich eine erste Version davon bauen.
Siehe Getting started.
  • wir brauchen build/shariff.complete.css, weil FontAwesome im Frontend sonst nicht eingebunden wird
  • wir brauchen build/shariff.min.js, weil jQuery schon gebundled ist
  • dann eben in jeden Entry ein <div class="shariff"></div> mit data-*-Atrtibuten entsprechende der Optionen (die man in den Plugin-Einstellungen konfigurieren können sollte)
Bei flattr weiß ich nicht so richtig, weil wir dafür (meine ich?) ein separates Plugin haben. Lokalisierung würde ich erstmal nur de/en machen und ggf. hinzufügen, falls sich Übersetzer (für das Plugin) finden. Und wie gesagt: Backend würde ich erstmal lassen, das sieht komplizierter aus (wobei ich natürlich keine Ahnung habe, weil es PHP ist :mrgreen:)

YL
onli
Regular
Posts: 2825
Joined: Tue Sep 09, 2008 10:04 pm
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by onli »

Soeben auf Spartacus hochgeladen: https://github.com/s9y/additional_plugi ... 511b25d2c8

Bitte testen :) Das plugin heißt "Share Buttons" auf englisch, "Sharebuttons" auf deutsch und seine id ist serendiptiy_event_social.

Das Backend einzubinden sieht ebenfalls einfach aus, wenn ich das richtig sehe ist das im Grunde das Hochladen einer PHP-Datei, und dann den Buttons die URL zum Backend zu geben. Allerdings bräuchte FB eine Appid, aber gut, auch das würde man mit der Config ein ein paar Erklärungen hinkriegen.
yellowled
Regular
Posts: 7111
Joined: Fri Jan 13, 2006 11:46 am
Location: Eutin, Germany
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by yellowled »

onli wrote:Bitte testen :)
Wow, das ging schnell. :)

Was ich testen kann:
  • Twitter: funktioniert
  • Facebook: funktioniert im Prinzip, holt sich aber nicht den korrekten Eintragstitel (ich tippe auf fehlende OpenGraph-Metadaten). Eventuell müsste man auch nur data-url für Artikelansicht auf {$entry.rdf_ident} bzw. überall sonst auf {$serendipityBaseURL} setzen?
  • Xing: funktioniert
  • WhatsApp: funktioniert
  • Mail: funktioniert nicht, in der Shariff-Demo aber schon; ich glaube, es fehlt data-mail-url? Jedenfalls steht hier im href des Mail-Links „<Artikel-URL>?view=mail“, in der heise-Demoseite aber „mailto:foo@example.com?subject=Shariff%20demo%20page&body=%3Chttp%3A%2F%2Fwww.heise.de%2F%3E“.
  • Info: funktioniert; kann man irgendwie™ dafür sorgen, dass der Button immer entweder der erste oder der letzte ist, der ausgegeben wird?
Google+, Pinterest, LinkedIn, AddThis, Tumblr, Flattr, Diaspora, Reddit, StumbleUpon und Threema nutze ich nicht bzw. habe kein Konto, kann daher nicht sagen, ob sie funktionieren.

Color-Theme-Auswahl (data-theme) über eine Plugin-Einstellung wäre noch sehr nützlich und ich glaube, heise hat sich einen flexbox-Bug auf iOS eingefangen. Aber das hat nichts mit dem s9y-Plugin zu tun.

YL
yellowled
Regular
Posts: 7111
Joined: Fri Jan 13, 2006 11:46 am
Location: Eutin, Germany
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by yellowled »

yellowled wrote:und ich glaube, heise hat sich einen flexbox-Bug auf iOS eingefangen. Aber das hat nichts mit dem s9y-Plugin zu tun.
Hat es in der Tat nicht, ich hab ihnen schon ein Issue aufgemacht. :D

YL
onli
Regular
Posts: 2825
Joined: Tue Sep 09, 2008 10:04 pm
Contact:

Re: Plugin-Vorschlag: Social Links / Shariff

Post by onli »

Danke fürs Testen :)
yellowled wrote:Facebook: funktioniert im Prinzip, holt sich aber nicht den korrekten Eintragstitel (ich tippe auf fehlende OpenGraph-Metadaten). Eventuell müsste man auch nur data-url für Artikelansicht auf {$entry.rdf_ident} bzw. überall sonst auf {$serendipityBaseURL} setzen?
Das sollte bereits auf rdf_ident stehen. Das Problem wird das übliche Facebook-problem mit dem ? nach index.php sein, das von FB fälschlicherweise maskeirt wird. Dann führt der Link nicht mehr zum Artikel.
yellowled wrote:Mail: funktioniert nicht, in der Shariff-Demo aber schon; ich glaube, es fehlt data-mail-url? Jedenfalls steht hier im href des Mail-Links „<Artikel-URL>?view=mail“, in der heise-Demoseite aber „mailto:foo@example.com?subject=Shariff%20demo%20page&body=%3Chttp%3A%2F%2Fwww.heise.de%2F%3E“.
Ah, das bräuchte dann wohl eine Sonderbehandlung im Code?
yellowled wrote:Info: funktioniert; kann man irgendwie™ dafür sorgen, dass der Button immer entweder der erste oder der letzte ist, der ausgegeben wird?
Ja, wir könnten ihn automatisch nach hinten setzen falls er vorhanden ist.
yellowled wrote:Color-Theme-Auswahl (data-theme) über eine Plugin-Einstellung wäre noch sehr nützlich
Stimmt.
Post Reply