Zum Inhalt springen

Pagination der Startseite mit Movable Type

Ein Punkt der mich in Movable Type immer gestört und um den ich Nutzer anderer Weblog-Systeme beneidet habe, war der Link „Ältere Beiträge“ unten auf der Startseite, sprich die Pagination der Beiträge. Gerade wenn man in kurzer Zeit viele Beiträge veröffentlicht ist es sinnvoll zumindest die letzten 50 bis 100 Beiträge durchblättern zu können.

Allerdings habe ich mir nie wirklich Gedanken darüber gemacht bis mir diese Kritik im Bezug auf das Brettspiel-Blog geäußert wurde. Und wenn man kurz darüber nachdenkt ist es auch bei einer Movable-Type-Konfiguration mit statischen Dateien möglich. Es geht allerdings auf die Performance beim Einfügen bzw. Aktualisieren von Artikeln und beim Kommentieren – daher habe ich mich auf die ersten 50 Beiträge auf 5 Seiten beschränkt. Danach verlinke ich auf die Übersicht über die Titel aller bislang erschienenen Beiträge.

Eigentlich ist das Ganze sehr einfach. Zunächst legt man eine Kopie des Index-Templates an, die als Datei index-seite2.html gespeichert wird. Dort fügt man unten nach dem Tag </MTEntries> in etwa folgenden Code ein:

  1. <p class=“content-nav“>
  2.   <a href=“/index-neu.html“>&laquo; Neuere Beitr&auml;ge</a>
  3.   <a href=“<$MTBlogURL$>“>Startseite</a>
  4.   <a href=“/index-seite3.html“>&Auml;ltere Beitr&auml;ge &raquo;</a>
  5. </p>

Dann suchen wir den Tag <MTEntries> und ersetzen ihn durch <MTEntries lastn="10" offset="10"> wobei 10 die Anzahl der Artikel pro Seite ist. Das speichern wird uns machen eine weitere Kopie, die als index-seite3.html gespeichert wird. Dort ist das Offset dann doppelt so hoch, also 20. Auf index-seite4.html ist es dann drei mal so hoch, also 30. Das geht so weiter bis zur letzten Seite, wo ich statt dem Link auf einer weitere Seite einen Link auf das Archiv gesetzt habe.

Nun müssen wir auf der normalen Index-Seite nur noch <MTEntries> durch <MTEntries lastn="10"> ersetzen und unten nach dem </MTEntries> in etwa folgenden Code einfügen:

  1. <p class=“content-nav“>
  2.   <a href=“<$MTBlogURL$>“>Startseite</a>
  3.   <a href=“/index-seite3.html“>&Auml;ltere Beitr&auml;ge &raquo;</a>
  4. </p>

Alle Seiten müssen natürlich auf eine automatische Aktualisierung gesetzt werden. Das war es auch schon.

Noch ein Wort zur Geschwindigkeit: Es ist meinem Gefühl nach etwas langsamer aber nicht dramatisch. Wenn man fünf Seiten verwendet (als vier zusätzliche) sollte das etwa so viel langsamer sein, wie wenn man einem Artikel vier weitere Kategorien bzw. Tags hinzufügt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.