Das neue Grav Plugin Feed Teasers habe ich entwickelt, weil mir eine Funktionalität im hier Verwendeten CMS fehlte, die ich früher unter Wordpress auf meinem Blog verwendet habe um auf Nachrichten anderer Webseiten hinzuweisen, bzw. sie zu verlinken. Sicherheitsmeldungen von Heise Security und der News Feed der Tagesschau waren schon damals auf der Startseite des Blogs prominent vertreten. Hier nutze ich zusätzlich diese Option um die neuesten Beiträge dieses Blogs auf der Startseite zu verlinken.

Feed Teasers Vorschau

Feed Teasers zeigt Beiträge aus externen RSS- oder Atom-Feeds als klickbare Teaser-Kacheln an (Mini-Teaserbild, Titel, Textanriss). Bei mehreren konfigurierten Feeds kann optional per Tab-Reiter zwischen ihnen umgeschaltet werden. Ein Klick auf eine Kachel öffnet den Originalartikel in einem neuen Browser-Tab. Das Plugin kommt ohne externe PHP-Abhängigkeiten aus – RSS/Atom-Parsing läuft komplett über in PHP eingebaute Funktionen (SimpleXMLElement, cURL bzw. Stream-Kontext als Fallback). Damit bleibt das Plugin nicht nur schlank, es lässt sich auch über die Standardwege von Grav installieren und aktualisieren.

Konfiguration

Das Plugin wird über das Admin Panel konfiguriert und teilt sich dort in zwei Bereiche, die durch Reiter erreichbar sind.

Allgemein

  • Cache-Dauer (Sekunden)
    • Das Plugin holt die konfigurierten Feeds und speichert sie lokal für eine Anzahl von Sekunden zwischen, bevor der Feed erneut geholt wird.
    • Standardeinstellung: 1800 Sekunden (30 Minuten)
  • Beiträge pro Feed
    • Anzahl der Beiträge aus dem Feed die angezeigt werden.
    • Standardeinstellung: 6 Beiträge
  • Länge des Textanrisses (Zeichen)
    • Anzahl der als Textanriss darzustellenden Zeichen pro Beitrag.
    • Standardeinstellung: 180 Zeichen
  • Mindestbreite einer Kachel (CSS-Wert, z.B. 260px)
    • Bestimmt indirekt, wie viele Kacheln pro Zeile passen. Kleinerer Wert = mehr Kacheln nebeneinander.
    • Standardeinstellung: 260px (Pixel)
  • HTTP-Timeout (Sekunden)
    • Zeitspanne in der ein Feed ein Ergebnis liefern muss, bevor die Anfrage abgebrochen wird.
    • Standardeinstellung: 8 Sekunden
  • Tabs anzeigen (bei mehreren Feeds)
    • Bestimmt ob Reiter angezeigt werden um zwischen mehreren Feeds umzuschalten, wenn mehr als einer konfiguriert ist.
    • Standardeinstellung: Ja
  • Fallback-Teaserbild
    • Pfad, absolute URL oder Grav-Stream (z.B. plugin://feedteasers/images/fallback.png, theme://images/eigenes-bild.jpg). Leer lassen für kein Fallback-Bild.
    • Stansardeinstellung: plugin://feedteasers/images/fallback.png

Feeds

Das Plugin bringt zur Anschauung einen Beispielfeed mit, der gelöscht werden sollte, nachdem eigene Feeds hinterlegt sind. Zum Eintragen eines zusätzlichen Atom/RSS Feeds unten auf die Schaltläche + Add Item klicken und die beiden Felder ausfüllen:

  • Anzeigename
    • Der Anzeigename wird auf dem Reiter angezeigt (wenn Reiter aktiviert wurden).
  • Feed-URL (RSS oder Atom)
    • Die Addresse unter der der Feed abgerufen werden kann.

Bereits konfigurierte Feeds können hier bearbeitet oder gelöscht werden.

Entwicklung

Da ich das Plugin über den integrierten Weg des GPM Repositories anbieten wollte um es im Admin Plugin und via bin/gpm install feedteasers installierbar zu machen und die Firma (Trilby Media) hinter dem Open Sorce CMS für seine automatische Verteilung ein Github Repository voraussetzt, habe ich ein etwas umfangreicheres Setup für die Versionsverwaltung gewählt.

Versionsverwaltung

Feed Teasers wird auf Codeberg verwaltet und spiegelt eigehende push Vorgänge umgehend auf den Github Spiegel, der von Grav auf neue Releases überwacht wird und die dann als Installation/Update innerhalb einer Stunde anbietet. Ich möchte hier nicht mit technischen Details zur Umsetzung langweilen. Wer sich dafür interessiert darf mich gern im Fediverse ansprechen.

Christian Schmidt @christiansagt@norden.social

Interessiert am ehrlichen Austausch, kein autofollow. Ungeschminkt, manchmal schmerzhaft. 🇪🇺 🇺🇳

💜

186Followers
20Following
3844Posts
2024Joined
pronoun er/he
Web jcs-net.de

Beitragen

Wenn du dich an der Entwicklung von Feed Teasers beteiligen möchtest, schau bitte in die CONTRIBUTING.md des Repositories. Auch an der Übersetzung der Konfigurationsoberfläche kann man mitwirken.

Diskutiere den Beitrag gern im Fediverse mit mir.

Previous Post