Podcast media will not play anywhere
In some cases, your media files will not play at all. This will either result in the media player just doing nothing when users click on the play button, or the browser giving you a 404 error when you click on the ‘Download file’ link.
There are a couple of reasons that this could be happening, so read on to find out how to sort it out for your site:
If you are using a caching plugin (such as W3 Total Cache or WP Super Cache), then the problem is most likely that your podcast audio URLs are being unnecessarily cached. To work around this you simply need to set your plugin to exclude URLs that include strings like this from the cache:
The way to do this will depend on the plugin, but for W3 Total Cache the option is on the Performance > Page Cache page and for WP Super Cache you will find it on the Settings > WP Super Cache page.
Due to the unique way that WP Engine‘s system is setup, they require a certain rule to be added to your site’s configuration in order for Seriously Simple Podcasting to work correctly. In order to do this, you simply need to log a support ticket with them and send them the following message:
I am using the Seriously Simple Podcasting plugin. In order for me to take full advantage of the plugin I need you to add the nginx bypass rule for the
podcast-player URLs to my site's config.
Please add this to NGINX Before Rule
# Seriously Simple Podcasting
rewrite podcast-download/([^/]+)/([^/]*)/? /index.php?podcast_episode=$1 break;
rewrite podcast-player/([^/]+)/([^/]*)/? /index.php?podcast_episode=$1&podcast_ref=player break;
WP Engine are aware of this plugin and the work required to fix this for you, so they will be able to sort it out in no time.
If your site is on an nginx server then you will need to add two new rules to your nginx config:
This needs to be put in the
server directive for your site running Seriously Simple Podcasting. It basically tells all requests to the
podcast-playerendpoints to process them as a
.php file (even though the URL states that it is an
.mp3or similar), which bypasses them through to PHP-FPM.
Note that you may need to change
fastcgi_pass 127.0.0.1:9000; to match that of your PHP-FPM configuration.
If you have this issue with your audio files, but you have no idea if your server is built on nginx or not, then please contact your host and send them the link to this guide.
If you have tried all of these options and you still have absolutely no luck, then the absolute last resort is to add the following snippet to the
functions.php file of your theme (or child theme):
Note that this is an absolute last resort and is not recommended. You will almost never need to go this route, but it will ultimately enable the audio files to work correctly if nothing else is working for you. The downside of this method is that you cannot take advantage of the added security that the plugin’s built-in URL rewrites offer. It also means that you will also not be able to use the integrated Stats add-on.