Review of the Smart Podcaster plugin for WordPress

I recently tried the Smart Podcast Plugin by the infamous Pat Flynn, and wanted to share some thoughts on getting it configured the way I wanted for the Discover #HamOnt Podcast.

Full Multi-Episode Smart Podcaster Player

Full Multi-Episode Smart Podcaster Player

Individual track podcast player

Single track player

There seems to be a bit of a page rendering delay for the full multi-episode player, but I haven’t traced if it’s something else within the Podcaster theme conflicting or the JavaScript from the podcaster player itself.

For single posts, you can add the single podcast player via a short code within the post content.  However, the podcaster theme I’m using already has the URL of the episode MP3 within the post meta, so I figured adding a simple do_shortcode() with the appropriate attributes would allow me to automatically add the player to the top, but it didn’t work.  So I ended up having to call the Single Podcast Player core function directly to get it to work:

/**
* Inject the HTML for an audio player above the content
*/
function podcaster_add_smart_player( $content ) {
    if ( class_exists( 'SPP_Core' ) and is_single() and get_post_meta( get_the_ID(), 'cmb_thst_audio_url', true ) ) {
$podcast_player = SPP_Core::get_instance()->shortcode_smart_track_player(
            array(
                'url' => get_post_meta( get_the_ID(), 'cmb_thst_audio_url', true ),
                'image' => ( wp_get_attachment_image_src( get_post_thumbnail_id(), 'medium' ) ? wp_get_attachment_image_src( get_post_thumbnail_id(), 'medium' )[0] : '' ),
                'title' => trim( substr( get_the_title(), strpos( get_the_title(), ':' ) + 1 ) ),
                'artist' => get_bloginfo( 'name' ),
            )
        );
        $content = $podcast_player . ' ' . $content;
    }
    return $content;
}
add_filter( 'the_content', 'podcaster_add_smart_player', 1 );

I did something similar to inject the latest episode onto the homepage page template.

I’m using the free version, and while I totally get you need to push the upgrade, it’s super annoying that the upgrade messages appear nearly everywhere within the dashboard.  Here it is at the top of editing a post after saving (not one, but two):

Annoying podcaster player messages

And again when trying to add a new plugin, which doesn’t even fit the context:

More annoying messages

And even on the settings page for Gravity Forms, a separate plugin:

More annoying messages

It should be enough to communicate why you should upgrade in the options and when you add the popup when adding the podcast episode shortcode, but to inject it everywhere across the entire WordPress admin is a bit ridiculous.  The quick way I can see to get rid of it is either to upgrade, or adding return true; to the is_paid_version() function (approximately line 1483 of smart-podcast-player/classes/core.php):

/**
* Tells whether this version is the paid or free version
*
* @return true if this is the paid version of the player, false otherwise
*
* @since 1.0.2
*/
public static function is_paid_version() {
    return true;
    // ...
}

If I wouldn’t have done this, I would have uninstalled the plugin.

All and all a nice, clean user interface and while it’s too soon to tell how much of an uptick the plugin is causing in listens via the website, the clean interface for listening to past episodes and on the individual posts itself is a welcome change from the previous default player included with the podcaster theme.