Navigation überspringen

WordPress: Posts in RSS-Feed nur aus­zugs­wei­se mit Wei­ter­le­sen-Link

23.6.2022·Kommentare:  11Retweets:  1 0

Jahrelang habe ich meinem RSS-Feed meine Posts vollständig ausgegeben und als nicht-kommerzielles Blog hatte ich mit etwaigen Conversion-Einbußen kein Problem (falls jemand den Post lieber im RSS-Reader seiner Wahl lesen möchte). Vor kurzem habe ich aber beschlossen, doch auf auszugsweise ausgegebene Posts mit Weiterlesen-Link umzusteigen. Über das Warum, die eher suboptimale Einstellung »Textauszug« in WordPress und wie man sie umgehen kann, geht es in diesem Post.

Warum Posts nur auszugsweise?

Zunächst einmal zur Grundsatzfrage, weshalb man seine Posts im RSS-Feed vielleicht nur auszugsweise anbieten möchte. Zu sagen, Zugriffe wären mir komplett egal, wäre natürlich gelogen, allerdings hält sich der Ansturm dieser Einflugschneise ohnehin in Grenzen. Auslöser waren für mich zwei andere Gründe:

  1. Neigen Feed-Aggregatoren wie Feedly dazu, einmal ausgespielte Posts nie wieder zu aktualisieren.
  2. Ist die Standarddarstellung von HTML-Markup in vielen RSS-Readern nicht ideal.

Zu Punkt 1: Ich neige dazu, viele Posts erst nach der Publikation zu verfeinern. Ist vielleicht eine schlechte Angewohnheit, aber erst, wenn ein Post »draußen« ist, kann ich mich beim Lesen viel besser auf Korrekturen und »Texttuning« konzentrieren. Dass die WordPress-Vorschau mit bestimmten WP-Supercache-Einstellungen nicht klarkommt und bei mir seit Jahren nicht mehr funktioniert, spielt wohl auch eine Rolle. Da Aggregatoren wie Feedly aber Posts nie aktualisieren, führt das dazu, dass Leser mit solchen Abos immer die schlechteste Version eines Posts bekommen.

Bezüglich des 2. Punkts: Ich verwende doch hin und wieder Markup für Tabellen und Code, dazu kommt noch mein spezielles Definition-List-Markup für Bilder mit Text (ist vermutlich nicht mehr zeitgemäß). All das stellen die meisten Feedreader einfach nicht gut dar.

Warum die WordPress-Einstellung suboptimal ist

Zunächst wollte ich die auszugsweisen Posts einfach über die entsprechende Einstellung im WordPress-Admin-Interface aktivieren:

EinstellungenLesen unter »Füge für jeden Beitrag in einem Feed Folgendes hinzu« auf »Textauszug« stellen

Die Einstellung »Textauszug« führt aber dazu, dass im Feed der content-Tag weggelassen wird und nur mehr der (nicht HTML-fähige) description-Tag mit »[…]« am Ende zum Einsatz kommt und kein weiterführender Link zum Blogpost angezeigt wird. Manche Reader, wie z.B. der in Outlook integrierte, fügen so einen Link hinzu, andere, wie Reeder auf iOS, nicht.

Eine gute Lösung habe ich auf Stackexchange gefunden. Dazu einfach die Einstellung »ganzen Text« belassen und folgenden Filter in der functions.php des eigenen Themes hinzufügen:

function more_feedlink( $content ) {
$parts=explode('<span id="more-' . get_the_ID() . '"></span>', $content);
return $parts[0] . ' <a href="' . get_permalink() . '">… weiterlesen →</a>';
}
add_filter( 'the_content_feed', 'more_feedlink' );

Eure Meinung

Was meint ihr? Seid ihr Fan vollständiger Posts in RSS-Feeds oder besucht ihr lieber das Blog selbst? Über eure Feedback dazu freue ich mich wie immer in den Kommentaren!


Neueste Artikel

Schlagwörter

· · ·


11 Kommentare

Hier (11) · Twitter (0) · Facebook (0)

#1 von Peter am 23.6.2022, 10:35 Uhr

Ich bin nach wie vor ein Freund davon, Blogposts vollständig über RSS auszuliefern.

Der Auszug mit dem Weiterlesen-Link hat sich vor 20 Jahren bei werbefinanzierten Angeboten durchgesetzt. In RSS-Feeds lässt sich zwar auch Werbung einbinden (Caschys Blog macht das noch so), aber das richtige Geld fließt erst auf der eigenen Website. Heutzutage geht es dazu noch darum, die Leser:innen zu tracken. Retargeting usw.

Meine Frage an dich: Ist das bei dir notwendig? Wenn ich es richtig verstehe, hast du einen Day Job und dies hier ist ein Nebenprojekt mit einem Nebenverdienst (falls du irgendwo Affiliate-Links eingebunden haben solltest, das habe ich nicht gecheckt). Der Wert dieses Blogs für dich ist doch die Selbstdarstellung (z.B. für zukünftige Bewerbungen) und das Netzwerken. Dafür musst du die Leser:innen aber nicht auf deine Website holen. Das, was du erreichen möchtest, die Bindung zu anderen Menschen, erreichst du über deine Worte. Dafür die Schwelle möglichst niedrig zu setzen, ist meiner Meinung nach der richtige Weg.

Die Markupprobleme habe ich bei meiner Überlegung mal außer Acht gelassen.

#2 von Benedikt am 23.6.2022, 16:41 Uhr

Hi Peter, vielen Dank für deinen interessanten Input! Und freut mich, dass es noch User:innen gibt, denen das Thema RSS am Herzen liegt. 😉

Ich betreibe mein Blog komplett nicht-kommerziell, mit minimalstem Tracking (ich will eigentlich nur die Besucherzahlen für mich selbst wissen). Ein etwaiger Networking-Gedanke steht auch nicht im Vordergrund, da ich berufliche Themen eher selten anschneide.

Der Gedankengang, dass man User aber dann nicht unbedingt auf die Website holen muss, ist natürlich spannend. Notwendig ist der Schritt mit den auszugsweisen Posts – abgesehen von meinen beiden Punkten – somit wohl eher nicht.

Ich bin beim Darübernachdenken aber jetzt noch auf etwas gestoßen, an das ich nicht gedacht hatte: Eventuell liegt das Problem wegen des Aktualisierens nicht an Feedly, sondern an WordPress. Sprich, dass WordPress den Feed gar nicht erst mit neuen Post-Versionen aktualisiert – das werde ich jedenfalls nochmal prüfen und meine Entscheidung vielleicht noch einmal überdenken. Vielleicht füge ich statt eines Weiterlesen-Links auch eine Info (in den dafür dann vollständigen Post) ein, für die aktuellste Version den Post im Browser zu öffnen.

#3 von Peter am 23.6.2022, 18:37 Uhr

Neben Feedly gibt es ja noch viele andere RSS-Plattformen. Um Resourcen zu sparen, rufen diese den Feed einmal bei dir ab, auch wenn sie ihn dann an x Abonnenten ausliefern. Wer diese Zahl tracken will, hat ein riesiges Problem. Mein Punkt: Du hast keine Kontrolle darüber, was die Plattformen machen. Das gilt dann eben auch für Aktualisierungen – ganz gleich, was du auf deiner WordPress-Instanz machst.

Mir blutet das Herz, dass das nicht geht. Denn technische Standards wurden mal eingeführt, dass sich so etwas genau abbilden lässt, wenn sich alle daran halten.

Eine andere Möglichkeit wäre, Neuerungen und Änderungen per Social Media bekannt zu geben, z.B. über Twitter. Dann bekommen deine Follower:innen mit, wenn du schreibst »Neu im Blog: …« genauso wie »… habe den Beitrag xyz aktualisiert …« oder »… habe die Frage von abc aufgenommen und in einem eigenen Abschnitt beantwortet …«. Nach einem Tag, nach drei Tagen, nach einer Woche, nach Bedarf – wie es deinem Rhythmus entspricht.

#4 von Benedikt am 23.6.2022, 20:32 Uhr

Danke nochmal für die interessante Antwort!

Neben Feedly gibt es ja noch viele andere RSS-Plattformen. Um Ressourcen zu sparen, rufen diese den Feed einmal bei dir ab, auch wenn sie ihn dann an x Abonnenten ausliefern. Wer diese Zahl tracken will, hat ein riesiges Problem.

Naja, regelmäßig prüfen müssen Feedly & Co. meinen Feed ja ohnehin. Ob sie da dann, zumindest jene Items direkt im Feed, auf Änderungen überprüfen und ihre Version in ihrem Cache/CDN um nur den neuesten Post erweitern oder eben alle Items aktualisieren, ist für die Auslieferung dann egal – die gecachte Version ist so oder so neu um muss an alle Abonnenten ausgeliefert werden. Wenn jeder seine gesamte Timelime (und nicht nur die letzten 20-50 Items ausliefert) und immer alle Posts ändert ist es wohl schwierig(er) skalierbar. Bei ein paar Dutzend Posts pro Feed, wo Feedly auch nur die neuen und geänderten (wie viele ändern sich meist wirklich?) berücksichtigt, sollte das meiner Meinung nach machbar sein. Zumindest in dieser Google-Groups-Diskussion meint ein Feedly-Engineer auch, dass das sogar der Fall sein sollte … ist es aber zumindest bei mir nicht.

Mir blutet das Herz, dass das nicht geht. Denn technische Standards wurden mal eingeführt, dass sich so etwas genau abbilden lässt, wenn sich alle daran halten.

Was ich da interessant finde (und mir bis jetzt nicht klar war): In der RSS-2.0-Spezifikation gibt es für die einzelnen Feed-Items gar keine Möglichkeit neben pubDate ein Datum für die letzte Aktualisierung anzugeben. In Atom gäbe es genau das mit dem updated-Tag auch pro Item. Was die Feed-Aggregatoren dann daraus machen ist, wie du schon schreibst, natürlich wieder eine andere Sache …

Mein Punkt: Du hast keine Kontrolle darüber, was die Plattformen machen. Das gilt dann eben auch für Aktualisierungen – ganz gleich, was du auf deiner WordPress-Instanz machst.

Genau – aber mein Gedankengang war dann eben, die Leser:innen genau dort hinzubringen, wo ich die Kontrolle habe. 😉 Aber ja, es ist nerviger, ein Klick oder Tap mehr und ob’s bei RSS Sinn der Sache ist, daran scheiden sich wohl die Geister.

Eine andere Möglichkeit wäre, Neuerungen und Änderungen per Social Media bekannt zu geben, z.B. über Twitter.

Das würde bei großen Themen, die über einen längeren Zeitraum Relevanz haben durchaus Sinn ergeben – wenn der Post dann tatsächlich um neue Inhalte erweitert werden würde. Ich bessere aber meist nur Rechtschreib-, Flüchtigkeitsfehler und Stil aus, da wäre das natürlich übertrieben. Und es löst eben das Problem nicht für die RSS-Abonnenten, die mir nicht zwangsweise auf Twitter, Facebook & Co. folgen.

#5 von Robert Lender am 23.6.2022, 22:04 Uhr

Ich bin an sich ein Fan vollständiger Feeds. Hat man in seinem Reader einige hundert, dann wäre das aufrufen all der Seiten schon aufwändig. Und manchmal will man nur querlesen, ob was interessantes dabei ist.

#6 von Benedikt am 25.6.2022, 9:16 Uhr

Hi Robert, vielen Dank auch für deinen Input! Die Sache mit sehr vielen Feeds und Querlesen hatte ich so auch nicht gesehen, stimmt aber (da nerven dann Auszüge recht schnell und man stößt gerade die Interessierten vor den Kopf). Ich werd das nochmal überdenken und mir auch Atom als Alternative ansehen.

#7 von Peter am 29.6.2022, 12:56 Uhr

Ich abonniere die Kommentare übrigens per RSS, wenn ich mich selbst zu Wort gemeldet habe. In diesem Fall mit:
https://benedikt.io/2022/06/wordpress-rss-feed-auszugsweise/feed/

Mein RSS-Reader inoreader liefert diese aber nicht aus. Vielleicht liegt es am Feed, vielleicht an inoreader. Keine Ahnung.

Per Plugin gäbe es auch die Möglichkeit, sich per E-Mail über neue Kommentare informieren zu lassen. Das würde ich sogar noch lieber nutzen.

#8 von Benedikt am 29.6.2022, 17:45 Uhr

Hi Peter, der Feed für die Kommentare funktioniert bei mir in Reeder (iOS) und wird auch angezeigt, wenn ich ihn bspw. In Chrome öffne – siehst du da zumindest den Quellcode?

Benachrichtigungs-Plugin steht auf meiner Liste – und hatte vor Jahren auch das Subscribe-to-Comments-Plugin (vor der Weiterführung mit Reloaded-Suffix) im Einsatz. Schrecke noch etwas davor zurück, weil solche Erweiterungen, insbesondere seit DSGVO-Verschärfung (gut), mit jeder Menge Cruft (schlecht) und zu stylenden Templates daherkommen. Und ich will den Single-Request, mit dem ich die Seite ausliefere (Ausnahme Matomo) nicht opfern. Letzteres evtl. eh kein Problem, hab es aber noch nicht getestet und weiß nicht, ob und wie viele Frameworks und Libraries diese Plugins nachladen.

Ich priorisiere es aber jetzt mit User-Feedback höher (und sollte evtl. auch den RSS-Link für Kommentare wieder sichtbar machen). 😉

#9 von Peter am 29.6.2022, 18:12 Uhr

Der Kommentar-Feed selbst funktioniert, er lässt sich auch im Browser problemlos aufrufen. Lediglich inoreader liest ihn nicht ein, zeigt mir keine Einträge im Feed an. Ohne Fehlermeldung.

DSGVO ist ein gutes Argument! Den Aufwand würde ich persönlich auch scheuen und dann lieber auf die Funktion verzichten.

#10 von Robert Lender am 2.7.2022, 12:35 Uhr

Lieber Benedikt, danke fürs überdenken 🙂 - und entschuldige die späte Antwort.

Bin gespannt, wie du dich entscheidest. So oder so werde ich natürlich gerne dein Blog weiterlesen 🙂

#11 von Benedikt am 7.7.2022, 20:38 Uhr

Hi Robert, bitte gern und überhaupt kein Problem bzgl. Zeitspanne (ich kenn’ das ja von mir 😉). Ich hab jetzt mal oben angekündigte Zwischenlösung eingebaut: Vollständige Feeds mit kurzer Info, für aktuellste Korrekturen den Post im Browser zu öffnen. Feedback welcome! 🙂

Kommentieren

Am liebsten hier, gerne aber auch auf Twitter und Facebook.
Ich freue mich über jeden Kommentar und antworte gern innerhalb von 24 Stunden.