Podlove Podcast Publisher

Descripción

We built the Podlove Podcast Publisher because existing solutions are stuck in the past, complex and unwieldy. The Publisher helps you save time, worry less and provides a cutting edge listening experience for your audience.

Official Site: publisher.podlove.org

Video Tutorial: Getting started with Podlove Publisher

Compatible Feeds

The Publisher makes it easy to create highly expressive, efficient and super compatible podcast feeds with fine grained control over client behavior (e.g. GUID control to replace faulty episodes and for clients to reload) supporting all important meta data.

Multi-Format Publishing

The Publisher also makes multi-format publishing – embracing all modern and legacy audio and video codecs – a snap. By adopting simple file name conventions, the plugin allows the podcaster to provide individual feeds for certain use cases or audiences without adding work for the podcaster during the publishing process.

Optimized Web Player

The Publisher also comes with integrated with the Podlove Web Player plugin (which you do not need to install separately) and fully support its advanced options including multiple audio (MP4 AAC, MP3, Vorbis, Opus) and video (MP4 H.264, WebM, Theora) format support for web browsers. This Web Player is fully HTML5 compatible (but provides Flash fallback for ancient environments) and is ready for all touch based clients too.

Chapter Support

The Publisher also makes it easy to publish chapter information in the player to make access to structured episodes even easier. Full support for linking directly to any part of your podcast on the web with instant playback included.

Flexible Templates

To round it all up, a flexible template system enables you to published Podcasts in a defined fashion and change the style at any time without having to touch your individual postings later on.

And this is just the beginning. We have a rich roadmap that will bring even more interesting features: integration with helpful services, much improved timeline metadata support (show notes) and much more.

Lecturas adicionales

Development of the plugin is an open process. The current version is available on GitHub Feel free to contribute and to fix errors or send improvements via GitHub.

Requires PHP 5.4+

Capturas

  • Custom episode post type separates media from your blog content.
  • Download analytics provide you with all the data you ever wanted.
  • The Publisher automatically checks the health of your media files.
  • The mighty template engine gives you full control over the episode presentation.
  • Includes the Podlove Subscribe Button, the easiest way for listeners to subscribe to your podcast.
  • Includes the Podlove Web Player. One more thing: you can manage and present all contributors easily.

Instalación

  1. Download the Podlove Publisher Plugin to your desktop.
  2. If downloaded as a zip archive, extract the Plugin folder to your desktop.
  3. With your FTP program, upload the Plugin folder to the wp-content/plugins folder in your WordPress directory online.
  4. Go to Plugins screen and find the newly uploaded Plugin in the list.
  5. Click Activate Plugin to activate it.

FAQ

Is Podlove Podcast Publisher free?

Yes! The core features of Podlove Podcast Publisher are and always will be free. Paid Professional Support is available but not necessary to run the plugin.

Are there Download Statistics?

Yes! Podcast Downloads can be tracked and analyzed. You can easily see how many people downloaded you podcast episodes, which clients they used, if they prefer to subscribe to the feed or listen on your website using the web player—and much more.

Are there Privacy / GDPR considerations?

Podlove Publisher is GDPR compliant and provides prewritten text snippets for your privacy page. See https://docs.podlove.org/podlove-publisher/guides/dsgvo-gdpr.html

Where can I host my podcast files?

Any storage where you have control over the file naming is compatible with Podlove Podcast Publisher. You can manage files using a simple FTP/sFTP or use services like Amazon S3.

Where can I ask questions and get support?

Free support where questions are answered by the community is available in the Podlove Community Forum. There is a German community in the Sendegate.

How can I help the project?

The continued success of Open Source project relies on the community. There are many ways you can help:

This product includes GeoLite2 data created by MaxMind, available from http://www.maxmind.com.

Reseñas

31 de diciembre de 2020
Great Open Source Plugin for having a free, but complex podcasting suite.
27 de abril de 2020
Every time I update the pluging I miss the player. This is continously because its a bloat plugin with thousand of options. And the worst, there's no option to rollback cause there's no visible previous versions.
26 de noviembre de 2018
This plugin is really easy to use and works as expected. The podcast pages as well as the podcast feed look very good and contain all information. There's a good player included and it combines well with the "Podlove Subscribe Button". I tried several other plugins: "Seriously Simple Podcasting" works very similar but is more confusing, "Blubrry Podcasting" has some kind of cloud dependency i.e. requires an account on their page. "Podlove Publisher" for me is the clear winner.
Leer todas las 39 reseñas

Colaboradores y desarrolladores

«Podlove Podcast Publisher» es un software de código abierto. Las siguientes personas han colaborado con este plugin.

Colaboradores

«Podlove Podcast Publisher» ha sido traducido a 3 idiomas locales. Gracias a los traductores por sus contribuciones.

Traduce «Podlove Podcast Publisher» a tu idioma.

¿Interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.

Registro de cambios

3.6.1

  • fix: sql issue when creating the episode database tables

3.6.0

New Module: Soundbite

Adds support for the <podcast:soundbite> RSS feed tag.
The intended use includes episodes previews, discoverability, audiogram generation, episode highlights, etc.

Using this module you can specify an audio segment for each episode that can be read by for example audiogram generation services.

New Module: WordPress File Upload

If you are using WordPress Media as storage for your Podlove assets, this new
module adds conveniences.

First, you define a Upload subdirectory for your Podlove assets. This overrides
any WordPress settings, so for example you can safely enable the typical date/month
structure for WordPress attachments and it will not affect your Podlove Uploads.

Then you can update your «Podlove – Media – Upload Location» setting. You can keep
it empty to let Podlove Publisher take care of it, or set it yourself if you have
a custom file hostname.

Now there is an «Upload Media File» button in your episode form above
the «Episode Media File Slug» where you can directly upload your files.
If you are using multiple assets, you can upload them all there. Just make sure
they all have the same filename (except the file extension) before you upload.

3.5.5, 3.5.6

Fixes

  • SECURITY: sql injection in «Social & Donations» module
  • transcript API returns list again
  • PLUS open graph images (use new API)
  • handle webvtt voice, missing Contributors
  • related episodes: remove whitespace in shortcode HTML to fix rendering in Spotify

Changes

  • webvtt transcripts use public contributor name
  • transcript voices / contributors:
    • you can now select «none» in the voice assignment
    • only voices with an assigned contributor (and not «none») appear in public transcripts
  • generate default copyright claim if it is not explcitly set

3.5.4

  • adds copyright field in «Podcast Settings – Directory», which is apparently required by the Apple Podcast Directory since yesterday.
  • perf: remove frontend.js (inline logic to download button HTML)

3.5.2 / 3.5.3

This releases reverses all changes to Permalinks in releases 3.5.0 and 3.5.1.

I severely underestimated the effect these changes would have and revert all changes until I find a better solution. It’s simply not acceptable to change episode URLs, especially without an option for automatic redirects.

Please verify your episode URLs and the two expert settings “Permalink structure for episodes” and “Episode Pages”.

What to do if you have used the “PODLOVE_ENABLE_PERMALINK_MAGIC” constant? It has no effect any more and you can safely remove it from your config file.

What happened to the “Simple Episode Permalink” setting from release 3.5.1? It has been removed, too.

Sorry for the trouble.
Happy podcasting 🙂

Other

  • fix: remove usage of PHP 7.1 syntax in one file

3.5.1

2021-04-14

  • add: expert setting to make episode permalinks /%postname%/
  • add: include Publisher Database Version in system report
  • drop WordPress version requirement to 4.9.6

3.5.0

Breaking Change

Removes two expert settings:

  • «Permalink structure for episodes» and
  • «Episode pages»

These settings allowed to define custom URL structures for episodes and the episode archive.
However they have caused trouble for a long time (see #1038)
and the only viable way out seems to remove them.

How does that affect you?

If you have never touched these settings, feel free to shrug, smile and move on.

If you are using these settings, I encourage you to consider not using them as they are mostly of cosmetic nature.
Should you however prefer to keep everything as is (including the known bugs of erratically broken permalinks / URLs), you can
enable the settings back with a single line of code in your wp-config.php:

    define('PODLOVE_ENABLE_PERMALINK_MAGIC', true);

Experimental: Full-Page Podlove Templates

If you want to create a 100% custom page based on an episode but without all the WordPress theme around, this is for you.
Possible use case: A dedicated page to print the episode transcript.

  1. create a new Podlove Template, for example page-episode-transcipt
  2. Write that transcript as a full HTML page. That means it starts with <!doctype html><html> and ends with </html>!
  3. Append ?podlove_template_page=page-episode-transcipt to your public episode URL. For example if your episode is https://example.com/ep001/, then open https://example.com/ep001/?podlove_template_page=page-episode-transcipt

Very simple example template:

<!doctype html>
<html>

<head>
  <meta charset="utf-8">
  <title>Transcript | {{ episode.title }} | {{ podcast.title }}</title>
  <meta name="viewport" content="width=device-width, initial-scale=1">
</head>

<body>

  <p>
    Here's the transcript for podcast <strong>{{ podcast.title }}</strong> episode <strong>{{ episode.title }}</strong>:
  </p>

  [podlove-transcript]

</body>

</html>

Enjoy!

Shownotes Module

  • provide website screenshot as fallback when no sharing image is available (requires PLUS token)
  • show images
  • show image in edit view
  • when importing, show all entries
  • show import progress when unfurling
  • fix osf importer
  • fix encoding issue when importing from HTML

Miscellaneous

  • update database for podcast user agents — notably includes classification of Apple Watch downloads as bot #1203
  • transcript: add some basic info about podcast and episode into webvtt as a note
  • analytics: add hook podlove_useragent_opawg_data to add custom user agent detection
  • Podlove Templates: add dataUri method to images. Takes same arguments as url but returns a data uri. Useful if you want to generate a self-contained HTML page. If you’re not sure, better use url.
  • fix: transcripts with trailing newlines don’t confuse the importer
  • fix: don’t count contributors multiple times if they have multiple contributions in an episode (#1200)
  • fix: calling wptexturize too early (#1194)

3.4.1

  • fix: analytics shows section now does not include other taxonomies
  • use image caching for shownotes images
  • analytics shows section is now ordered by downloads

3.4.0

podcastindex namespace

Both additions add metadata to the feed automatically if the data is present. No new user interfaces or data entry is necessary.

  • add support for feed tag podcast:transcript, linking to the transcript in various formats (json, webvtt, xml)
  • add support for feed tag podcast:person on episode level

analytics

  • for selected date range, total downloads are shown
  • for selected date range, display downloads per show (only visible when shows module is enabled)

3.3.2

  • fix: in analytics, the «Export as CSV» section is now clickable when global statistics are loading or have no data
  • fix: «Export as CSV» works again
  • fix: «global statistics» charts idling indefinitely until a custom date range is chosen

3.3.0 / 3.3.1

  • add support for feed tag podcast:funding (see Podcast Settings -> Directory)
  • unfurl uses https://plus.podlove.org/api/unfurl as API endpoint
  • add banner linking to donations page (can be dismissed)
  • shownotes:
    • add shortcode [podlove-episode-shownotes]
    • display links even if unfurling failed
    • template improvements
    • add «delete all» button
    • polished failure section UI and allow editing original URL
    • API: add missing permission callbacks
    • fix: keep order when importing via slacknotes
  • slacknotes: update to new API
  • change donation URL to https://opencollective.com/podlove
  • fix: handle missing templates in TwigLoaderPodloveDatabase

3.2.2

  • fix: crash when creating new episodes

3.2.1

  • fix: coverart url encoding #1181
  • fix: some settings not applying to episode title tag (thanks Dirk)
  • fix: crash when accessing season data for an episode without season

3.2.0

  • when automatically generated episode titles are used, use the blogpost title as fallback for the episode title
  • fix: disable slug auto-updating after importing from Auphonic
  • fix: webvtt-parser autoloading issues #1175
  • fix: escape ampersands in itunes:image hrefs in the feed #1176 (fixes incompatibilities with Jetpack image CDN)

3.1.*

  • fix twig namespace prefixing related issues
  • remove unused vendor-bin directory from releases

3.1.1

  • tracking: fix operating systems appearing twice in different spellings
  • chore: prefix all composer packages (solves Twig related incompatibilities & crashes)
  • chore: add content and files to episodes api (#1165)

3.1.0

  • analytics: new chart showing download development from episode to episode #1100 thanks @poschi3!
  • Auphonic: show production warnings in module (https://twitter.com/auphonic/status/1305849345762185217)
  • download tracking: use OPAWG podcast user agent database in addition to Matomo database
  • stability: detect plugins using older/incompatible versions of Twig. Display a warning on the site (instead of an error) and a detailed explanation on «Podlove > Support» screen.
  • enhance: podcast file validation in dashboard includes all post stati and checks for missing slug #1161
  • enhance: only allow episode numbers of 0 and higher in form input #1158
  • api: add public endpoint for transcripts
  • api: add public endpoint for shownotes
  • fix: Podlove Web Player 5 includes all downloadable assets in download section
  • fix: transcript API URL #1145 thanks gibso!
  • fix: editing/deleting shows (#1077)
  • fix: episodes and shows API
  • fix: migration for Shownotes only when the database table exists

3.0.4

  • fix: contributor notifications settings can be saved again (#1144)
  • fix: do not include invisible contributors in Web Player 5 API (#1142)
  • fix: detect Yoast SEO, wpSEO: disables Open Graph module (#1132)
  • fix: use podcast summary as RSS Feed <description> if subtitle is not set (#1092)

3.0.3

  • fix: title escaping in RSS feed when using native (not auto-generated) titles

3.0.2

  • add: Untappd social service
  • fix: Auphonic module (wrong HTTP API headers)
  • chore: update npm dependencies

3.0.1

  • fix: escaping issue in RSS feed (itunes:author and itunes:owner)
  • fix: remove (rare) accidental double enclosure tag in RSS feed when «enclosure» post meta is present

3.0.0

Breaking Changes

  • requires PHP 7.0 (or newer)
  • requires WordPress 5.2 (or newer)
  • Web Player:
    • removes Podlove Web Player 2
    • removes Podlove Web Player 3
    • removes «insert player automatically» option (probably does not affect anyone as the web player is by default inserted via template)
    • removes «Chapters Visibility» option (use dedicated Web Player settings instead)

New Publisher PLUS

=> plus.podlove.org

Publisher PLUS is a new service providing Feed Proxy and Podcast Subscriber statistics for Podlove Publisher.

To use it, enable the Publisher PLUS module, then visit plus.podlove.org to create an account.

Subscriber Statistics are only the beginning. Expect more features soon!

Experimental: Shownotes

Generate and manage episode show notes. Helps you provide rich metadata for URLs. Full support for Publisher Templates.

This module is a work-in-progress. But it’s usable, so feel free to give it a try, especially if your shownotes are link-heavy and you’re comfortable writing Podlove (Twig) templates.

The module is currently hidden. Make it visible by setting a PHP constant, for example in your wp-config.php: define('PODLOVE_MODULE_SHOWNOTES_VISBLE', true);.

Use this template as a starting point: https://gist.github.com/eteubert/d6c51c52372dc2da2f1734a5f54c7918

Shortcodes

  • podlove-episode-contributor-list
    • new design
    • renders text-only in RSS feed
  • podlove-podcast-contributor-list
    • new design
  • podlove-episode-downloads
    • the text link variant is now the default style

Miscellaneous

  • remove Bitlove module (service does not exist any more)
  • remove Flattr module
  • remove «Website Protocol» setting (not necessary any more as Let’s Encrypt is widely supported)
  • enable episode chapters by default
  • convenience: «Copy to Clipboard» function for Podlove Template shortcodes
  • expose iTunes id/URL in podcast feed (#1078)
  • improve feed rendering: use XML generator for all tags with user input to guarantee valid feeds for all inputs
  • add function to remove a transcript from an episode (#1131)
  • add Steady as donation service
  • add template tag: episode.post_title (#1136)
  • add template tag: service.type (https://community.podlove.org/t/replacing-social-icons/2321)
  • add default avatar to transcript preview
  • fix: search logic (#1072)
  • fix: fetch Podlove News via https (#1037)
  • fix: don’t send Publisher logs to system log when WP_DEBUG is on (#1065)
  • fix: ensure uploads for webvtt (transcripts) and gz (exports) are allowed
  • fix: ensure contributors module is active when transcripts are used
  • fix: ensure permissions in shownotes and transcripts APIs
  • fix: don’t count download requests with http range header of bytes=0-0 (#1135)
  • update dependencies
  • build releases with GitHub Actions (in favour of TravisCI)

Changes for previous versions can be found in the changelog.txt.