Author: Tony Hayes

Tony is the Lead Developer of the Radio Station Plugin and Netmix Directory, with over 12 years experience in WordPress Development encompassing a wide variety of website projects, custom plugins, backend integrations and creative designs.

Image of Chicago Public Radio Studio

Radio Station Update: Version 2.4.0 with Streaming Audio Player

We’re thrilled to announce the shiny NEW Streaming Audio Player has finally arrived in Radio Station!

I think you’ll agree, once you’ve read about the details and given it a go, we’ve done a great job with it. We really wanted our new streaming audio player to stick out head and shoulder above other available audio players. To get it right, we’ve combined some pretty high-level technical requirements with “mastering the basics” of an audio player interface, taking our time with it to make it awesome.

Setting up the Streaming Audio Player

The new Radio Station Streaming Audiio Player is available in our recent 2.4.0 release as both a widget or a shortcode. After updating your plugin to the latest version in your WordPress admin dashboard, head to your Radio Station => Settings page to get started.

If you haven’t set your streaming URL, take a moment to do so, along with your stream’s audio format. You can also set your Station Title and Logo while there, which can both be displayed in the Streaming Audio Player.

You’ll see the new Streaming Audio Player tab on the Settings page. Click on that and you’ll find where to set all the new Streaming Player defaults. These settings will be used by Streaming Audio Player widgets or shortcodes if they aren’t overridden by those. Finally, you can go to your Appearance -> Widgets page to add the Radio Player widget to a sidebar widget area. Alternatively, you can use the [radio-player] shortcode in a page or post, or echo do_shortcode('[radio-player]'); in a template.

Now navigate to your frontend page and click PLAY! Upgrade complete – stream activated – level up! Groovy beyond words.

High-Level Requirements

Maybe you’re still wondering what we meant by “high-level technical requirements”… it’s just a standard web streaming audio player, right? Well, internet browsers are a little more complex these days and we also want to lay the groundwork to be able to add some additional awesomeness later on. With all that in mind, here are the main requirements we’ve sought to fulfill in this initial version:

  • Support multiple audio scripts for widest data format support.
  • Auto-detect data format and match to the appropriate script.
  • Fallback to an alternative audio script on playback failure.
  • Support multiple instances of the player on the same page.
  • Prevent more than one player from playing on the same page.
  • Enable auto-resuming of playback when returning to a site.
  • Have a stylish and completely stylable player control interface.

As you might imagine, the technical challenges involved in each of these individual pieces and bringing them all together are quite immense. A lot of work has gone into getting all the audio scripts to work in a similar way while maintaining the possibility of multiple player instances throughout development. Fortunately, all of these challenges were able to be resolved over many development hours!

Mastering the Basics

When it comes to a streaming audio player, the basics are having a stylish and working user interface that can be customized to your needs. Many players have taken the approach of providing specifically designed skins to choose from, but this tends to provide a rather limited choice that might not work with your chosen style and branding. Instead, we’ve made available some simple options to match up with your theme. Light or dark? Circular, rounded, or square buttons? Vertical or horizontal layout? We thought of almost everything!

This approach gets you a working streaming audio player instantly that looks good from the very outset.  You can tweak it with more styles as you need to, to really make it reflective of your station’s brand style guide. Of course, if you want to develop it further, under the hood there are filters for every aspect of the player, so you can change whatever you need to without ever losing your work after a plugin update.

What this player isn’t…

To reduce confusion with what it is, we’d like to mention what this player isn’t

It’s not a “jukebox” for a list of audio files. There really are plenty of those around already if you need them – but not many players specifically for live streaming. Of course, we may add more features in the future for better handling of files and playlists, but it’s certainly not our starting focus – live streaming is, as that’s what many stations really need.

It’s not a 3rd party embed. While some of these can work pretty well, since your streaming source tends to be off-site anyway, a self-hosted player script works just as well. Actually, given the latest cross-domain javascript security policies, it’s a better option anyway – giving you more direct control and integration possibilities.

Streaming Evolution

While all this is a great beginning for our new Radio Station Stream Player, we know it is still a beginning! There is more work to be done, more options to be added, more features to develop, more innovations to explore, and more services to integrate with… We’d like to thank all our users for being part of this new beginning! For the now, we hope you enjoy the new Player and stay tuned for the next installment of the Radio Station story!

Until next time,
Tony Hayes, Lead Developer

Radio Station PRO – Just Around The Corner!

We are thrilled to announce the upcoming launch of Radio Station PRO next week!!! Jam-packed with new features to “level up” your Station’s online presence. During the launch, we are offering a 30% discount to Radio Station users for your first yearsubscription! Click on the huge red button below to sign up to the exclusive Launch List to receive your discount code by email when we go LIVE.

Yes, I’m in! I want the 30% discount off of PRO


Radio Station 2.3.2- Now Available for Download

This maintenance and bug fix release is now available for download on the plugin page.

New features in this release include an optional Radio Clock time display above the Schedule – also available as a separate widget or shortcode. The clock displays the current radio time and user time side by side, making it easier for your listeners to tune in to your Schedule from other parts of the world. 

The Current Show, Upcoming Shows and Current Playlist widgets (and shortcodes) now support AJAX loading, which it is recommended to use if you have a page cache (AJAX loading the widgets “busts” the cache to display the currently accurate Show information.) You can turn this on by default via the Plugin Settings, or for each individual widget. 

As a further improvement to the user interface, both Show Shifts and Playlist Tracks can now be saved instantly via AJAX with the click of a button, without having to wait for an Update button page reload. And we have also added arrows so that you can re-order playlist tracks just easily as you can now save them. We’re sure these great additions will save you time as we continue to make Radio Station even better with each release!

On the bugfix side, the main issue we addressed in this release was to use the plugin Timezone Setting for all time calculations throughout the plugin. While this was no easy task, we’re confident this will improve the consistency of all time displays into the future. We also improved the show shift conflict checker logic and fixed an issue users were reporting with the show and override midnight end conflicts, as well as calculating next shows at the end of the schedule week… along with a handful of other minor bugfixes in line with our goals of flexibility and stability. Read the full list of fixes below.

Tony Hayes led the development of this release.

Thanks to the following users for reporting issues:


2.3.2 includes the following:

  • Update: Plugin Loader (1.1.2) with settings link fix
  • Improved: use plugin timezone setting for all times
  • Improved: show shift conflict checker logic
  • Added:  Radio Clock Widget for user/server time display  
  • Added: AJAX widget load option (to bypass page caches)
  • Added: automated show schedule highlighting (table/tabs/list)
  • Added: playlist track arrows for re-ordering tracks
  • Added: AJAX save of show shifts and playlist tracks
  • Added: post type editing metabox position filtering
  • Added: more display attributes to Master Schedule shortcode
  • Fixed: handling of UTC only timezone settings
  • Fixed: added check for empty role capabilities
  • Fixed: added settings submenu redirection fix
  • Fixed: show and override midnight end conflict
  • Fixed: calculate next shows at end of schedule week
  • Fixed: metaboxes disappearing on position sorting
  • Fixed: move tracks marked New to end of Playlist on update
  • Fixed: override shift array output showing above schedule
  • Fixed: master schedule specify days attribute bug
  • Fixed: display real end time of overnight split shifts
  • Fixed: master schedule display with days attribute
  • Fixed: logic for Affected Shifts in override list
  • Fixed: removed auto-tab selection change on tab view resize
  • Fixed: Current Show widget schedule/countdown for Overrides  
  • Fixed: multiple overrides in schedule range variable conflict  

View the complete Radio Station changelog here.

If you have any issues, please submit Radio Station support requests here.

For bug reports and feature requests, please submit to our Radio Station Github page here.

Support Radio Station by becoming a Patron. Your monthly contribution supports the ongoing development of the FREE and open source version of Radio Station.

You can also now list your Radio Station or Webcast in our new Netmix Directory. Submit your listing for FREE until the end of May 2020 and get a do-follow backlink from one of the oldest domains related to online music and radio today!