We’re excited to bring you the latest and greatest version of Radio Station yet!
Version 2.3.0 comes complete with a rewritten code base, a lot of massively cool enhancements, and many interesting new features added. We are pleased with this awesome progress and the growing possibilities for the usage of this plugin.
We know there is a lot to cover here! But we want to keep you fully informed… but if you don’t have time to dig into it all now, don’t miss the important update note below. And not to worry, if you need more information on any of the features in Radio Station, we have you covered – with the addition of the newly completed Documentation!
So without further ado…
What’s in Radio Station 2.3.0?
- Show Page Layout
- Show Avatars and Featured Images
- Responsive Table Schedule View
- Responsive Tabbed Schedule View
- Updated Show Widgets
- Updated Show Shortcodes
- Admin Plugin Options
- Automatic Page Displays
- REST API Data Endpoints
- Show Language Taxonomy
- Show Producer Role
- Show Editor Role
- Shift Conflict Checking
Why is this a “Major” Update?
After taking over Radio Station from its creator, Nikki Blight (@kionae) in June of last year, from our first update (2.2.0) we gradually fixed a good deal of bugs and improved existing functionality, while also bringing it up to modern WordPress coding standards. Nikki gave us so much to work with and we spent many hours thinking through enhancements and fixes, but in the back of our minds, we knew we had so much more to do. The last update (2.2.8) brought stability to the plugin and it was finally updated to our liking. It was then decided we would focus on features for a major version (2.3.0), so we skipped a minor release (2.2.9) to get it done. 🙂
Important Update Note!
Given this is such a major update, we have made every effort to make it as stable and bug-free as possible, delaying the release for testing, tweaking and retesting. We have put a lot into following the latest WordPress coding practices, at the same time as keeping everything backwards compatible with previous versions as possible. Of course, as with any major update, there are some changes you need to be aware of, and we recommend you backup your site and test out the features of the new version on a staging environment before you push it live. If you have already updated and are having problems, you can roll the plugin back to 2.2.8 (stable) and test on staging to sort them out.
While we have coded everything in a way to as to cause the least disruption, after updating you will want to check out your plugin settings on the Admin Plugin Options page we’ve added, as well as checking the various page layouts on your site. Be aware the newly added features will work better with the Plugin Settings adjusted to suit your needs, and since this is the first time that they need to be set, take a moment to make sure they are all completed accurately! (You don’t want to display the wrong timezone to your listeners, or have a broken streaming URL due to a typo.)
The one tricky point you will want to be sure to check out is the implementation of the new content-based page display templates. Have a look at the new Show page layout by viewing a single Show on your site. Most users will just seamlessly experience the new layouts without needing any further action. And if you’ve already put custom templates in place they will continue to be used as usual also. But, for this very reason, if you have previously copied the legacy page templates to your child theme directory (as recommended by previous documentation) and haven’t customized them, you will need to remove them to experience the new layouts.
We know this might sound a bit confusing at first, depending on your experience with the WordPress template hierachy, but we can assure you this has been done in this way for very good technical reasons in following best practice, continuing to support the hierarchy while at the same time automatically replacing the legacy templates with content-based ones. If you need to know more about this, you can read about it in more detail in the Page Templates Documentation.
That said, now let’s dig into what’s new..!
Theme Independent Templates
Until now, Radio Station only included some basic page templates based on a default WordPress theme, which you needed to copy to your Child Theme to modify further. We recognized this was far from ideal, as these templates might not match your theme, and require some developer experience to adjust to your theme’s layout and styles.
Instead, the plugin templates are now loaded into the content area via a content filter, so that they are independent of the theme used. And don’t worry, Radio Station still supports the WordPress Hierarchy, so if you already have custom templates in place (or want to use them in the future) you can. But for everyone else, you can have the new layouts within your content area, matching your existing theme, without need for further effort. Certainly far more robust!
Show Page Layout
Probably one of the most significant improvements we made is to the way single Show page display. Again, the new layout displays within your theme’s content area. We’ve added the Show information in different sections to give visitors easy access to the relevent sections. You can adjust some of the display settings for this from the Plugin Settings page. As an added bonus, you can also raise funds for a Show with the new Patreon feature. Just add your Patreon URL in the Show Edit page field and it will display a Patreon button on the Show page.
The new template also brings Posts and Playlists closer to the top of the page and uses switchable tabs to navigate between both. In the past, these features fell far below the Show Description. We observed many sites failing to use these features correctly because they weren’t as prevalent on the page. You had to scroll deep to find them and with some page builders, they disappeared altogether. They sort of sat there with no content as just empty header titles with no content filling them in.
We’ve also seen where some stations are using the Show Description field to post episodic content. To combat this, a new “Show More” function will hide extremely long, unwieldy Show Description content, so other important content is no longer pushed far down and below the fold. We hope the combination of Show More for the Show Description and the Tabbed access to Posts and Playlists create a better user experience and spur on usage to enhance and bring forward important content on your radio station websites.
Here is a screenshot of the new layout previewed on our Radio Station Demo site.
Show Avatars and Featured Images
Until now, the featured image for a show has been used as the Show Avatar (usually a logo.) However, we recognized that this prevents it from being used in a more common way as the Featured Image above the content. To fix this, Show Avatars have been split to their own separate feature (existing Show Avatars are automatically handled by the plugin) enabling the use of Featured Images in the more standard and prevalent way, more as a large banner or header image above the content. (Note that if your theme template used for shows does not display a featured image by default, there is a fallback option to enable an extra “Show Header” image field instead.)
Revamped Schedule Calculations
Since the existing schedule calculations were not allowing for more complex, but much-needed improvements to the rest of the plugin, they’ve been rewritten in their entirety. No mean feat! But we needed a more solid basis for adding features in the future.
One of the main reasons for doing this, was so that Schedule Overrides would be honoured in the Master Schedule views. These are now included in Table, Tabbed and List Views. (The Divs and Legacy views don’t do this so they are not recommended for use.) Note that while the Table and Tabbed views are styled, the List View remains unstyled for development use. The Radio Timezone is now displayed along with an improved Genre highlighter (allowing for multiple selections) at the top of the Schedule, so listeners can more easily find Shows of interest.
Responsive Table Schedule View
As the schedule grid is a table, and tables don’t generally work well with smaller screen, we’ve added width responsiveness so that it better adjusts to smaller width devices such as mobiles or tablets. On smaller screens, a clickable left or right arrow appears to scroll to the next or previous day column in the schedule, making it easier for mobile users to access your station’s schedule. The current day, time and show is also automatically highlighted, making it easy to see what’s on and what’s coming up.
Responsive Tabbed Schedule View
Nikki originally included the tabbed view as a developer-centric addition to Radio Station. In the past, to display the tabbed view, you had to add some code retrieved from the FAQ documentation and implement it yourself. Since 2.2.7, we included the Tabbed View via the existing Schedule shortcode. Now you can select the Tabbed view from the Plugin admin Settings page. And similar to the Table view, in 2.3.0 the Tabbed view is now responsive also, allowing for better display and access on smaller screens.
Updated Show Widgets
Since the schedule calculations have changed, all the Widgets have also been updated to use them. For a more consistent experience, and remove code duplication, widgets now pass their options to their respective shortcodes for display. Fpr clarity, we’ve renamed the Widgets from DJ On Air to Current Show, Upcoming On Air DJs to Upcoming Shows and Now Playing to Current Playlist. We’ve also added an optional countdown clock to the Current and Ipcoming Show widgets, and added a widget for displaying your Radio Timezone.
Updated Show Shortcodes
Revised Archive Shortcodes are now available for displaying your Shows List, Shows by Genre, Overrides List and Playlists List. Each has it’s own set of display options via shortcode attributes. Additionally, related Show Posts and Show Playlists can also be listed for a Show with a shortcode, and these are used automatically on the new Show Page layout. There is also a shortcode for displaying your Radio Timezone.
Automatic Page Displays
You can also now assign pages for your Schedule and other archive pages (Shows, Overrides, Playlists, and Genres.) Simply create a page first and then go to your Radio Station settings and assign the page. The content of that page will then automatically be replaced internally with the relevant content via shortcodes. These automatic pages use the default shortcode attributes, so if you want to customize them further, you can always include the relevant shortcode on the page instead with customized shortcode attributes, just as in previous versions, and turn the automatic display off.
More Great Features
As if all that wasn’t enough, you know we really wanted to push this forward and take this somewhere new, so we didn’t hold back in adding a whole bunch of new features we were inspired to do along the way. But we realize we can’t do everything at once either, so we’ve put together a brief Feature Roadmap if you want to know what’s to come. But here’s what else we got so so far…
Admin Plugin Options
It was time!
The need to be able to set new Plugin Settings via a Plugin admin page kept coming up. So we did it, based on an existing plugin settings class that we adapted and updated for the purpose. Since these are new settings, we considered it important each one come with a helper description next to the option and all options be placed under relevant tabs and sub-sections. For example, you can now set your Station Timezone, main Broadcast Language, Time Format and Streaming URL. It’s important to set these for usage throughout the plugin now and for use by future features.
REST Data API Endpoints
You read that right! Radio Station now has a full API implementation of data output for your Program Schedule or Show List. (It also has a fallback to output data via a Feed if you have disabled the REST API for some reason.) This means if you want to integrate your schedule data with external services, you can easily fetch it in JSON format. You can check out the API documentation for further details on available endpoints and data structures. We have a great intention planned for using this that we will be announcing in the near future. Stay tuned!
Show Language Taxonomy
You can now add assign Language(s) to your Shows (and Schedule Overrides.) This is similar to how you can already assign Genres via the Genre Taxonomy. You can set your main Show Language in the new Plugin Admin Settings page. This way you don’t need to assign a Language to the majority of your Shows, but instead can assign one or more Languages to a Show as needed and then will it override the default main language for that Show.
New Producer Role
Similar to assigning Hosts (previously DJs) to a Show, you can now assign a Producer to a Show too. This was done by adding a Producer role, which acts basically the same way as the existing Host / DJ role. And in the same way, you need to assign a Producer role to a user so that they appear in the Show page selection dropdown for Producers. The assigned Producer(s) will then be able to edit the Show as well as being listed on the Show Page, just like the DJs / Hosts already are.
This was added for security reasons, so Producers can have their own access and WordPress Admins, Hosts, and DJs would not have to unnecessarily share their login user names and passwords to interns or Producers. Plus, the Producers are now added to the Show page frontend display. Producers should get credit on a website for shows they help produce, shouldn’t they? So, here’s to all the Producers around the world that should be credited for their hard work! Cheers!
New Show Editor Role
Similar to how WordPress has an Editor role between Administrator and Author, Radio Station now has a Show Editor role to fill in the gap between site Administrators (eg. Station Managers) and Show Authors (Hosts or Producers.) A user assigned the Show Editor role has access to publish or edit any Radio Station related record (Shows, Override, Playlists.) Again, this was done for security but also to make it easier for say, a head of programming to manage the schedule, but without needing to be a full site Administrator
Shift Conflict Checking
As we found that it’s easy to make mistakes in scheduling and not notice, we’ve added some extra failsafes into Radio Station to help prevent this. While the new schedule calculations now do it’s best to detect and handle conflicts, this is really a stop-gap measure until you fix them up – but you need to know about them to do this! So now, Radio Station will now let you know automatically via a WordPress admin notice should you have a Show that overlaps with another one:
And, you can also see this same information visually highlighted in the Shift column of the admin Show List page, as well as for the conflicting Shift on the admin Show Edit page (both shown below). And, it will now better handle shift conflicts when you add or edit shifts with overlap. When you save a Shift with a conflict (or an incomplete shift), it will be saved as “disabled”, so that you need to either fix that Shift or the other Show’s conflicting shift before it can be re-enabled.
Here are a few action steps you can take right now:
1. You can view a live demo version of 2.3.0 right now at http://radiostationdemo.com.
2. Have questions or want to know more about a particular feature? Check out the new Documentation
2. Need support? Please visit the WordPress Plugin Support Forum
3. Want to contribute to the development of the open-source and free version of Radio Station, or make a feature request? Dive into the codebase and generate a pull request or open an issue at the Radio Station Githun Repo.
4. We also want to hear from our users. We’d love for you to respond to this email and tell us about your radio station or Internet broadcasting website. We want to know how you’re using the plugin and where in the world you are.
5. Speaking of the world… we need translators for the plugin, especially after 2.3.0 is pushed. Please get in touch with us at Contact Us to let us know you are interested in translating the plugin to your language. We’ll get you on your way!
6. Follow us on Twitter: @netmix
8. You can also take our survey.
We’re sure you’ll agree, this update features a slew of great changes and cool new stuff! Check the Radio Station Demo website for a full preview of 2.3.0.
And when you’re ready, download or update it and take it for a spin. We’re confident you’ll love the new release.
A very special thanks to Tony Hayes, our truly gifted and talented lead developer, who has spent many a day or night down under in Australia to move the ball forward and code-up the best iteration yet!
And stay tuned for the next episode… err I mean the release of Radio Station for WordPress!