Pagination in Templates?

Hallo, ich versuche mir eine neue Seite zusammen zu bauen und diese hat sowohl einen Blogbereich als auch einen Podcastbereich. Hier möchte ich aus Gründen die Podcasts in Kategorien unterteilt anzeigen. Das ist mit den Templates auch kein Problem, aber ich finde keine Möglichkeit nach 3 Folgen eine Pagination einzurichten. Also auf ältere Folgen zu verweisen. Geht das in Templates nicht? Wenn nicht, wie kann ich das sonst lösen? (Mir würde noch einfallen eigene wordpress site templates zu schrauben, aber da weiss ich nicht wie ich im php code sauber an die Episoden ran komme und finde in der Doku auch nichts dazu)

Ich bitte um Hilfe, ich hab schon über 30 std reingesteckt und komme keinen Schritt weiter.
Liebe Grüße
Mirco

Ich denke das ist nur möglich, wenn du im WordPress Theme die PHP Variante der Template API nutzt: https://docs.podlove.org/podlove-publisher/guides/understanding-templates.html#creating-php-templates--for-theme-developers

Der Grund: Du musst dir alles selbst bauen und da ist schon etwas Code-Logik notwendig. Grundsätzlich musst du per URL Parameter die Seite anhängen (/something/?my_page=1) und im Template abfragen und ich glaube, da kommst du in reinen Twig Templates derzeit nicht ran – in PHP jedoch kein Problem.

Dank dir, damit komme ich klar :slight_smile: PHP Ist ja nun auch kein Hexenwerk. Diese syntax ist mir allerdings neu. \Podlove\get_podcast()

Das ist die Syntax für Namespaces.
Damit kann man am Anfang einer Datei den Namespace definieren und dann z.B. In verschiedenen Namespaces function a () {} schreiben. Die Unterscheidung definiert dann eine Zeile.

Siehe: https://www.php.net/manual/de/language.namespaces.basics.php

Danke, sehr informativ. Schön das sich sowas in php auch mal durchgesetzt hat.

Entschuldige die Anfrage hier vor, das war eine typische „mit der Ente sprechen“ Problemlösung.

Hier eine kleine Anfrage.
Kann man das Mnemonic nicht auch noch zu den Episoden packen, Nur für den vollen Titel muss ich auch immer alle Podcast Informationen in PHP laden. Oder vielleicht einen mnemonic/full title wie er in Podlove konfiguriert ist? (Folgennummer Mnemonic Titel). Es wäre schon schön den an einer stelle im Backend verändern zu können und nicht jedesmal alle templates/php files anpassen zu müssen. sowas wie episode.fulltitle?

Wenn du eh schon auf PHP Ebene bist, kannst du dir auch deine eigene Funktion dafür bauen und die verwenden:

<?php 
function my_episode_title($podcast, $episode) {
    return $podcast->mnemonic() . $episode->number() . " " . $episode->title();
}

Das meine ich ja und meine Benutzer stellen das im Backend unter Podlove ein, jeweils unterschiedlich. Da müsste ich jedesmal neue PHP-Templates rauslassen, für jede Variante und die Einstellungen im Podlove sind sinnlos.

Wäre irgendwie schön, wenn mann diese Einstellungen in die PHP/Templates übernehmen könnte.

Ah, verstehe. Ja geht nicht, aber sollte es geben :slight_smile: https://github.com/podlove/podlove-publisher/issues/1136

1 Like

:smiling_face_with_three_hearts: :partying_face:

Jetzt schnalle ich das erst! Das ging früher auch schon mit dem Post-Object und episode.post.post_title, aber schön, dass das jetzt einfacher geht.

Ja, das ist so ein häufiger Anwendungsfall, dass diese dedizierte Implementierung sinnvoll ist.

Nicht wundern, ist noch nicht auf der docs Seite enthalten. Da ist mir das Werkzeug auseinandergefallen, was mir das erzeugt.

1 Like

Ich nehme ja an, dass der Weg über das Post Object weiter funktioniert, von daher besteht da keine Eile von meiner Seite, zumal sich ja nicht viel ändert. Die Änderungen bei den Shownotes-Templates sind da vermutlich wichtiger.