Kirby CMS: Lange Beiträge aufteilen

Update für Kirby 2

Kategorie: Kirby

Manchmal will man lange Blogbeiträge aufteilen. Das kann man entweder über separate Artikel erreichen oder aber, indem man einen Artikel auf mehrere Seiten verteilt, wie das in Online-Magazinen oft zu sehen ist. Die einzelnen Seiten sind dann über eine eigene Seitennavigation erreichbar.

In Content Management Systemen wie Wordpress oder Joomla kann man lange Beiträge aufteilen, indem man eine Seitenumbruch-Marke in einen Beitrag setzt. An dieser Stelle wird der Beitrag dann geteilt und automatisch eine Seitennavigation (manchmal auch ein Inhaltsverzeichnis) eingefügt.

Kirby bietet eine solche Funktionalität nicht von Haus aus an, aber mit dem Pagination-Objekt und ein bisschen PHP-Code kann man das ganz einfach nachbauen.

1. Textmarke in Text einfügen**

Überall, wo die Seite im Text-Bereich des Artikels aufgeteilt werden soll, wird eine Marke in Form eines HTML-Kommentars gesetzt, z.B.

<pre class="highlight html"><code><span class="html"><span class="sc2"><span class="coMULTI">&lt;!--pagebreak--&gt;</span></span></span></code></pre>


Da diese Markierung die HTML-Kommentar Syntax verwendet, erscheint sie nicht auf der Seite, selbst wenn man sich später entscheidet, den Beitrag doch nicht aufteilen zu wollen. Die Tags müssen also später nicht wieder mühsam entfernt werden, sondern es reicht, das Template zu ändern.

2. Ein Template erstellen, z.B. longpost.php

Als nächstes wird ein neues Template für lange Beiträge erstellt, das diese nun an den markierte Stellen aufteilt. Außerdem wird eine Seiten-Paginierung erstellt, die die Navigation zwischen den erstellten Beitragsseiten ermöglicht.

Hier ist das fertige Roh-Template mit Kommentaren:

Das Template funktioniert auch mit Beiträgen, die keine Seitenumbruch-Markierungen enthalten, dann wird auch keine Seiten-Navigation erstellt.

Mein Blogbeitrag über CSS Keyframe Animationen ist ein Beispiel für einen langen Beitrag, den ich auf 5 Seiten aufgeteilt habe.