Player mit immer neuester Folge embedden

Moin,

ich bin gerade am überlegen, ob man wohl einen Player auf einer externen Seite so embedden kann, dass der immer die jeweils neueste Episode aus einer bestimmten Kategorie zeigt. Hat da jemand eine Idee?

Oh, ja! Den Feature request hatte ich damals beim Player v3 auf einem PPW 2014 oder 2015 in Berlin schon mal bei Juri und Alexandra eingeworfen. Ich denke, der Player müsste bei der Übergabe der Episoden-ID im iframe-Embed-Code statt einer konkreten Episoden-ID ein “latest” dynamisch umsetzen, damit man mit einem unveränderten embed-Schnipsel immer die neueste Folge ausgeliefert bekommt. Wäre das möglich, @zusatzstoff? Für die Einbettung auf unserer typo3-Homepage (also nicht der Podcast-Webseite) wäre das jedenfalls immer noch ein nettes Feature.

1 Like

Also… bis das irgendwie seitens Podlove geregelt ist, hätte ich da was im Angebot, das bisher allerdings nicht dokumentiert ist :-}

Im Falle von - sagen wir mal ganz zufällig - dem Segelradio, könnte das mit fyyd über diesen Link geregelt werden:

Ich hab das bis heute nicht in den Teilenbutton eingebunden, das liegt aber auch daran, dass ich über den URL-Aufbau noch nicht so recht glücklich bin… Das latest ist im Grunde überflüssig, was soll da auch anderes hin? Andererseits ist ein /player ohne latest so aussageschwach…

Aber im Grunde geht’s so :slight_smile:

Edit: Meh, die Vorschau ist irreführend und ich hätte auch hinzufügen müssen, dass das Ganze natürlich per iframe reinmuss…

also ungefähr so:

<iframe src="https://fyyd.de/podcast/segelradio-segelradio-podcasts-zum-segeln/player/latest" frameBorder="0" width="100%"></iframe>

5 Like

Hmmm… welch ein glücklicher Zufall, fettes danke @eazy ! :slight_smile: Genau DAS habe ich gesucht!

Jetzt sag’ mir noch, dass ich als URL-Parameter dem Player die CI Farben der Seite mitgeben kann und dann bin ich sowas von Happy! :wink:

Klar, also… ähm… Nein, das geht so aus dem Stand grad nicht, der Wunsch aber ist verständlich…

Heißt das etwa, man kann schon jetzt nen Player nutzen, in dem man eine bestimmte Folge einbinden kann? Für z.B. ne Art “Featured-Old-Folge of the week”?

Das kann man ja schon lange. Der Podlove Embedded ja überall und bekommt einfach eine URL mit.

Dank Eazy kann man aber einen Player haben, der eigenständig jeweils die neueste Folge wechselt, wenn was neues veröffentlicht wird. (Für mich ist das sehr hilfreich, da ich auf die Seite, wo das laufen soll nur bedingt zugreifen kann und dem Webmaster nicht dauernd ne neue URL schicken möchte :wink: )

Für das was Du meinst, und das wäre auch, wohin ich gerade überlege, mal was am Wochenende zusammenzutippern, wäre eine “Featured Kategorie” sinnvoll. Dann eine URL dem Player zu geben, der einfach die episoden nach der neuesten Folge mit diesem Kategorietag filtert.

Aber solange man auf den Embedcode zugreifen kann, muss ja auch nur die URL ausgetauscht werden. Das ist zwar hässlicher als das WP-Backend, aber auch nicht viel mehr Aufwand, als jede Woche eine neue Folge der Featured-Kategorie zuzuweisen.

1 Like

Danke.
Wird also mal Zeit mich mal wieder genauer mit dem Publisher und dem Player auseinanderzusetzen…

1 Like

Sofern nicht deaktiviert, findest du in jedem Player unter “Share” am Ende </> den Embed Code zu der folge, die gerade im Player läuft.

z.B. < iframe width=“320” height=“400” src=“http://www.segelradio.de/wp-content/plugins/podlove-podcasting-plugin-for-wordpress/lib/modules/podlove_web_player/player_v4/dist/share.html?episode=http://www.segelradio.de/?podlove_player4=142” frameborder=“0” scrolling=“no”>

1 Like

@henningkrause Das hat wenig mit dem Player zu tun :slight_smile: Der frisst die Metadaten die du ihm gibst. Wenn @eazy bspw. einen Endpunkt hat der die Player config latest raus lässt kann das auch als dynamischer embed verwendet werden (passt sich dann an Höhe und Breite an).

Es scheint so als ob es für Publisher native das auch kann, zumindest hat @Obraka das auf https://baba.fm/ genau das gewünschte Verhalten.

3 Like

Joah, hab ich. Ist ein Custom Template (wofür ich den Code wahrscheinlich eh von hier hab).

Hier mein Sidebar template

{% set episode = podcast.episodes({limit: 1})[0] %}

<div class="podlove-latest-web-player">
    {{ episode.player }}
</div>

Eingebunden dann via ‘Podlove Template’ Widget. Und fertig, das wars

1 Like

@zusatzstoff Wenn ich es auf einer externen Webseite einbetten will, hat das schon was mit dem Player zu tun. Die Einbindung von @Obraka klappt ja nur deswegen, weil es auf der derselben Wordpress-Instanz/Webseite ist wie der Podcast mit dem Podlove Publisher-Plugin. Nur diese Webseite hat Zugriff auf die Podlove-Datenbank und kann daher intern nachschauen, welche Folge die aktuellste ist. Dieses Wissen hat man aber von außen als dritte Webseite nicht.

Ich möchte z.B. auf unserer typo3-Webseite https://www.helmholtz.de/ an fester Stelle in der Seitenstruktur immer die aktuellste Folge des https://resonator-podcast.de/ einbinden, ohne bei jedem Neuerscheinen einen Folge den neuen Embed-Code mit der neuen Podlove-internen-Episoden-ID aktualisieren zu müssen. Sprich: Der Embed-Code soll immer derselbe sein - er müsste auf so etwas wie “latest epsisode” referenzieren. Das kann aber nur der Player dynamisch auflösen. Momentan liefert der Player ja nur einen embed-Code mit einer spezifischen Episoden-ID. Das war mein Feature request von anno tuck. Vielleicht steht der ja noch in irgendeinem Trello? :wink:

2 Like

Ich würde dir empfehlen nicht einen EmbedCode zu verwenden sondern eine extension für Typo3 zu erstellen. Der EmbedCode ist eine Variante den Player einzubinden, aber gerade wenn du deine Umgebung im Griff hast deutlich weniger elegant als ein direkter embed. Schau dir da am besten mal die Dokumentation an: https://docs.podlove.org/podlove-web-player/embedding.html

Nochmal zum Player: Der Player ist komplett unabhängig vom Publisher. Das sind zwei komplett voneinander getrennte Projekte. Der Publisher ist einfach nur so nett gleich die Metadaten im richtigen Format mit zu liefern. Der Player läuft nur auf dem Client und ist auf ein Backend angewiesen. Deshalb brauchen wir ja Integrationen wie den Publisher oder fyyd um ihn mit Daten zu beliefern.

1 Like

Mal kurz damit rum gespielt

https://resonator-podcast.de/wp-content/plugins/podlove-podcasting-plugin-for-wordpress/lib/modules/podlove_web_player/player_v4/dist/share.html?episode=https://resonator-podcast.de/?podlove_player4=928

iFrame zur aktuellen Episdoe, 928 is also die ID. Das ist die ID vom Wordpressbeitrag/Item selbst. Sprich es ist folgenmässig so lange aufsteigend bis sich Holgi erdreistet ne andere Seite zwischen drin anzulegen… Auch kacke.

Die ID selbst kommt nirgends im Text oder im Feed vor, müsste also extra irgendwo hingeschrieben werden…

Keine Ahnung, es wirkt so als ob du über die Schiene kaum glücklich wirst… Eventuell über ein Customfeedplugin das nur die ID der letzten Episode aus wirft? Da sind wir aber schon gut um “rumwerkeln” Modus :slight_smile:

Eigentlich wollte ich gar keine typo3-Extension programmieren. Ich hatte gehofft, das Podlove-Projekt (und da unterscheide ich in der Tat nicht groß zwischen Publisher und Player) sieht auch einen Mehrwert für die Benutzer darin, einen solchen einfachen embed-Code wie

<iframe src="https://fyyd.de/podcast/resonator/player/latest" frameBorder="0" width="100%"></iframe>

zur Verfügung zu stellen, der dann nicht nur auf typo3-Webseiten, sondern wirklich auf allen Drittseiten funktioniert. Aber dann nehme ich halt den von @eazy.

2 Like

Du kannst gerne den Embed Code verwenden, iFrames haben aber eben auch ihre Limitierungen. Mit dem von dir angegebenen Embed Code hast du diese auch:

  1. Metadaten sind nicht identisch mit der von der Resonator Instanz (Untertitel fehlt bspw.), wenn Holgi mal das Theme anpasst sieht der Player auf der Resonator Seite anders aus als auf der Typo3 Seite
  2. Höhe passt sich nicht dynamisch an, deshalb hat der Player ein eigenes Share outlet mit fixierten Höhen
  3. Der Player ist auf eine Episode fixiert, ‘latest’ ist da ein wechselnder Identifier. Ein weiteres Teilen ist in deinem Beispiel nicht möglich

Vielleicht kann @ericteubert ja einen eigenen Endpunkt rauslassen und dokumentieren mit allen Vor- und Nachteilen.

image
image

2 Like

gibt es dazu mittlerweile eine gute Lösung?

Ich hätte das auch sehr gerne, da ich nämlich gerade an den von @zusatzstoff beschriebenen Limitierungen der iFrames hänge.

Die Höhe des iFrames in Wordpress-Blöcken kann man scheinbar nicht beeinflussen. Oder hat da jemand eine Idee?

Der statische iframe embed hat immer noch eine fixe Höhe. Damit sich der Player vergrößern/verkleinern kann braucht es ein JavaScript was in die Seite mit injiziert wird. Die Lösung mit einer dynamischen Konfiguration wäre für Wordpress System glaube ich immer noch am besten.