Beschrijving
AiO Podcast Studio is a complete WordPress podcasting plugin built for creators at every stage — whether you are showcasing an existing show, self-hosting your own podcast, or migrating from a third-party platform.
Whether you already have a podcast and want to display it beautifully on your WordPress site, prefer to host everything on your own server for full control, or are ready to move away from an external host entirely — AiO Podcast Studio handles every part of the workflow: importing your feed, organizing episodes and participants, generating a standards-compliant RSS feed, displaying your content with beautiful layouts, and tracking listener statistics — all inside the WordPress admin you already know.
Why AiO Podcast Studio?
AiO Podcast Studio fits wherever you are in your podcasting journey — display an existing show on your site, self-host everything on your own server, or migrate away from an external platform at your own pace.
- Showcase any podcast — embed and display your existing podcast on your WordPress site with beautiful layouts and a built-in player.
- Self-hosted option — store audio files in your own media library and keep full ownership of your content and audience data.
- Standards-compliant RSS — compatible with Apple Podcasts, Spotify, Amazon Music, Google Podcasts, and every directory that follows the iTunes namespace spec.
- No per-episode or storage limits — unlimited podcasts, unlimited episodes, unlimited categories.
- Developer-friendly — clean GPL code, filter/action hooks throughout, and full WordPress Coding Standards compliance.
Key Features
Import & Migration
- RSS Feed Import — Paste your existing podcast RSS URL and import your entire back catalog in batches. Metadata, artwork, and episode files are all pulled in automatically.
Content Management
- Unlimited Podcasts & Episodes — Create and manage as many podcasts and episodes as you want — no paywalls, no artificial limits.
- Audio & Video Support — Publish both audio and video podcast episodes from one unified interface. Video podcast support requires the Premium upgrade.
- Episode Chapters — Add chapter markers so listeners can jump to specific segments inside an episode.
- Episode Transcripts — Attach transcripts to episodes for improved accessibility and SEO indexing.
- Participant Management — Add hosts, guests, and contributors as reusable participant profiles that can be linked to multiple shows and episodes.
- Unlimited Categories & Tags — Organize your podcast library with hierarchical categories and flat tags. Front-end filters use them for smart discovery.
- Comments & Discussions — Enable listener comments on individual episodes to build community.
Distribution & RSS Feed
- Standards-Compliant RSS Feed — Generates a fully compliant podcast RSS feed with iTunes, content, and media namespace support — accepted by Apple Podcasts, Spotify, Amazon Music, and more.
- Follow & Subscribe Buttons — Add platform-branded follow buttons (Apple Podcasts, Spotify, Amazon Music, and others) to your podcast and episode pages.
- Social Sharing — Built-in share buttons let listeners share individual episodes across social platforms.
- Episode Downloads — Allow listeners to download episodes for offline listening with a single click.
Display & Layouts
- Multiple Layout Options — Display episodes in grid, list, compact, or slider layouts. Display podcasts in a grid. Display categories as grids, lists, or dropdowns.
- Customizable Podcast Player — A fully featured embedded media player with playback speed control, volume, and playlist support. Styled to match your site.
- Smart Search & Filters — Front-end filter forms let listeners search, filter by tag, and sort episodes by date, title, or duration.
- Related Episodes — Automatically suggest relevant episodes at the end of each episode page to keep listeners engaged.
- Pagination & Load More — Browse large episode archives with standard numbered pagination or a smooth “Load More” button.
- Flexible Embedding — Place podcasts, episodes, categories, tags, and participant lists anywhere using Gutenberg blocks, shortcodes, or classic widgets.
- Page Builder Friendly — Works with Elementor, Divi, Beaver Builder, and other popular page builders via shortcodes.
Analytics & Statistics
- Advanced Statistics (Premium) — Track plays, downloads, and listener trends with built-in statistics. View breakdowns by podcast, by episode, and over custom date ranges. No third-party analytics service required.
Settings & Customization
- 100+ Settings for Full Control — Fine-tune every aspect of the player, feed, display layouts, image sizes, SEO output, privacy behavior, and more through a structured settings panel.
- Shortcode Builder, Blocks & Widgets — A visual shortcode builder lets you configure and preview shortcodes without writing any code. Gutenberg blocks and classic widgets are also included for flexible content placement anywhere on your site.
Accessibility, SEO & Standards
- SEO Optimized — Integrates with Yoast SEO and Rank Math to output schema markup for podcasts and episodes. Transcripts and structured metadata improve search engine visibility.
- GDPR Compliant — Fine-grained privacy controls. Statistics tracking respects user consent signals.
- Multilingual Support — Full WPML and Polylang compatibility for multilingual podcast sites.
Developer & Platform
- User Role Restrictions — Granular capability controls let you define who can create, edit, publish, and manage podcast content.
- Built on WordPress Standards — Clean, well-documented GPL code. Custom post types, taxonomies, the Settings API, and the REST API — no proprietary lock-in.
External Services
This plugin connects to the following external services. All share-button connections are user-initiated — no data is transmitted to any third-party server at page load. Data is only sent when a visitor actively clicks a share button, at which point their browser navigates to the service URL.
This plugin generates share links that allow visitors to share podcast episodes on Facebook via the Facebook Share dialog.
Data sent: The episode page URL is passed as a query parameter in the share link.
When: Only when a visitor clicks the Facebook share button.
Terms of Service | Privacy Policy
Twitter / X
This plugin generates share links that allow visitors to share podcast episodes on Twitter / X via the Tweet Intent dialog.
Data sent: The episode title and page URL are passed as query parameters in the share link.
When: Only when a visitor clicks the Twitter / X share button.
Terms of Service | Privacy Policy
This plugin generates share links that allow visitors to share podcast episodes on LinkedIn via the LinkedIn Share Article dialog.
Data sent: The episode title and page URL are passed as query parameters in the share link.
When: Only when a visitor clicks the LinkedIn share button.
Terms of Service | Privacy Policy
This plugin generates share links that allow visitors to pin podcast episodes on Pinterest via the Pinterest Pin It dialog.
Data sent: The episode title, page URL, and optionally the episode image URL are passed as query parameters in the share link.
When: Only when a visitor clicks the Pinterest share button.
Terms of Service | Privacy Policy
Tumblr
This plugin generates share links that allow visitors to share podcast episodes on Tumblr via the Tumblr Share dialog.
Data sent: The episode title, page URL, and optionally the episode description are passed as query parameters in the share link.
When: Only when a visitor clicks the Tumblr share button.
Terms of Service | Privacy Policy
This plugin generates share links that allow visitors to share podcast episodes via WhatsApp. On mobile devices the native WhatsApp app is opened; on desktop the WhatsApp web interface is used.
Data sent: The episode title and page URL are included in the share link URL.
When: Only when a visitor clicks the WhatsApp share button.
Terms of Service | Privacy Policy
Remote RSS Feeds
When importing or refreshing podcasts, this plugin fetches the remote RSS feed URL provided by the site administrator. This sends an HTTP GET request directly to the RSS feed’s host server.
Data sent: No personal visitor data is included in the request. The request is a standard HTTP GET to retrieve the RSS feed document.
When: When a site administrator triggers an import or sync from the plugin’s import screen.
Premium Features
AiO Podcast Studio includes premium features for creators and teams who need more advanced control.
Video Podcasting
Publish video podcast episodes alongside your audio shows. Upload or link video files directly from the episode editor, and let the built-in player handle the rest.
Podcasts & Episodes Access Restrictions
Control who can listen to your content. Restrict entire podcasts or individual episodes to specific WordPress user roles — perfect for membership sites, private shows, and course-based content.
Advanced Statistics
Get a deeper view of your audience. Track plays and downloads per podcast and per episode, and explore trends over any custom date range.
Coming Soon
We are actively working on the next generation of AiO Podcast Studio. Here is what is planned for the upcoming release:
Podcasting 2.0 Support
The Podcasting 2.0 initiative (podcast: namespace) extends the standard RSS format with richer metadata. The next release will import and integrate these elements automatically when you sync your podcast feed:
- Transcripts — Import per-episode transcript URLs and types from
<podcast:transcript>tags. - Chapters — Import chapter file URLs from
<podcast:chapters>tags. - Hosts & Guests — Import hosts and guests with roles and images from
<podcast:person>tags. - Feed Lock — Respect the
<podcast:locked>flag during feed migration. - Stable Feed GUID — Store the permanent feed identifier from
<podcast:guid>.
If you import a podcast today and your feed already uses these tags, simply re-sync your podcast after upgrading to pull in the new fields — no manual data entry required.
Feedback & Feature Requests
Missing something? Contact us and we will be happy to review your suggestion and include it in a future release if it is a good fit.
Schermafbeeldingen















Blokken
Deze plugin heeft 5 blokken.
- AIOPOD – Tags Display a list of your episode tags.
- AIOPOD – Categories Display a list of your podcast categories.
- AIOPOD – Episodes Display a list of your episodes.
- AIOPOD – Podcasts Display a list of your podcasts.
- AIOPOD – Participants Display a list of your participants.
Installatie
Automatic Installation
- Log in to your WordPress admin panel.
- Go to Plugins Add Plugin.
- Search for AiO Podcast Studio.
- Click Install Now, then Activate.
Manual Installation
- Download the plugin ZIP file.
- Upload the
aio-podcast-studiofolder to/wp-content/plugins/via FTP, or use Plugins Add Plugin Upload Plugin. - Activate the plugin through the Plugins screen.
Getting Started
- After activation, a Podcasts menu item appears in the WordPress admin sidebar.
- Go to Podcasts Add New Podcast to create your first podcast manually, or paste an RSS feed URL to import an existing show.
- Add episodes under Episodes Add New Episode, or let the importer populate them from your feed.
- Configure the player, feed, and display options under Podcasts Settings.
- Embed your content anywhere using the provided Gutenberg blocks, shortcodes, or widgets.
FAQ
-
Does AiO Podcast Studio support video podcasts?
-
Yes, with the Premium upgrade. The core plugin supports audio podcast episodes. Video podcast publishing and video playback in the built-in player require the Premium upgrade. The RSS feed correctly identifies the media type for each episode regardless of tier.
-
Can I import my existing podcast from Apple Podcasts, Spotify, or another host?
-
Yes. Paste your public RSS feed URL into the importer (Podcasts Add New Podcast Import Podcast from RSS Feed). The plugin fetches the feed, creates the podcast and episode records, and pulls in metadata and artwork. Your original audio files are not re-uploaded — episode enclosure URLs continue to point to your existing host unless you re-upload them.
-
Is there a limit on the number of podcasts or episodes?
-
No. You can create an unlimited number of podcasts, episodes, categories, tags, and participant profiles.
-
Does the RSS feed work with Apple Podcasts and Spotify?
-
Yes. The generated feed follows the RSS 2.0 specification extended with the iTunes podcast namespace — the same format required by Apple Podcasts, Spotify, Amazon Music, and most other directories.
-
Why are older episodes missing from my RSS feed?
-
Feeds include the most recent 300 episodes. Apps and directories only ever see what the feed contains, so once a podcast grows past 300 episodes the oldest ones stop appearing in Apple Podcasts, Spotify, and your listeners’ apps. Episodes a listener has already downloaded are not affected, and nothing is deleted — the episodes remain on your site and keep their pages.
The limit keeps feeds quick to fetch and parse. It applies to member feeds in the same way. To change it, add this to your theme’s
functions.phpfile or a custom plugin:add_filter( 'aiopod_feed_episodes_limit', function() { return 500; } ); -
I changed something but my RSS feed has not updated
-
Feeds are cached, so that podcast apps checking for new episodes do not rebuild the whole feed every time. To refresh a feed straight away, open the podcast and click Update. That clears both the public feed and your members’ feeds for that podcast.
Developers who would rather not cache feeds at all can add this to their theme’s
functions.phpfile or a custom plugin:add_filter( 'aiopod_feed_cache_enabled', '__return_false' ); -
Does the plugin support multiple podcasts on one site?
-
Yes. Each podcast is an independent post with its own RSS feed URL, settings, episodes, and participants.
-
Where are statistics stored?
-
All statistics data is stored in your own WordPress database. No data is sent to external services.
-
Is the plugin translation-ready?
-
Yes. All user-facing strings use the
aio-podcast-studiotext domain. The plugin ships with a.pottemplate file in thelanguages/directory. -
Does the plugin work with caching plugins?
-
Yes. Standard page caching is compatible. The RSS feed is generated server-side on each request; if you use a full-page caching plugin, exclude your podcast feed URLs from the cache or use the feed caching recommended in the plugin settings.
-
Is the plugin compatible with multisite?
-
Yes. The plugin can be installed on a WordPress Multisite network, but it must be activated individually on each site. Network-wide activation is not supported.
-
Can I control who is allowed to listen to my podcasts and episodes?
-
Yes, with the Premium upgrade. Restrict an entire podcast or an individual episode to specific WordPress user roles, straight from the podcast or episode editor. No other plugin is needed.
Visitors without access see your restricted message in place of the episode, and the player is not loaded for them. In episode lists the episode is still shown with its artwork and title, marked with a padlock, so visitors can see what they are missing. Restricted episodes are left out of the RSS feed, and their download links return a “403 Forbidden” response to anyone without access — see “What exactly does restricting an episode protect?” below for what that does and does not cover.
Restricting a podcast also restricts every episode belonging to it, including episodes added later by an RSS import or a scheduled sync, so you do not have to edit each one. If you would rather control access per episode, leave the podcast unrestricted and restrict individual episodes instead. To turn the inheritance off altogether, add this to your theme’s
functions.phpfile or a custom plugin:add_filter( 'aiopod_inherit_podcast_access', '__return_false' ); -
Is the plugin compatible with Paid Memberships Pro?
-
Yes. To restrict podcasts and episodes by membership level, you will also need the Custom Post Type Membership Access add-on, which is not part of the free Paid Memberships Pro plugin — see their website for what your plan includes. Select Podcasts and/or Episodes on the add-on’s settings page, then use the “Require Membership” box on any podcast or episode to choose which levels may view it.
The restriction is applied everywhere the content appears: single pages, shortcodes, blocks, widgets, the player, and the RSS feed. Visitors without the required level see the restriction message from Paid Memberships Pro itself, so your membership levels, custom messages, and translations are used exactly as you set them up.
The public feed shows the same episodes to everyone and leaves restricted ones out. Members can also have a feed of their own — see the next question.
-
Can members subscribe to a private podcast feed in their podcast app?
-
Yes. This needs the Member RSS add-on for Paid Memberships Pro, which is not part of the free Paid Memberships Pro plugin — see their website for what your plan includes.
Each member gets a feed address of their own. Opened in a podcast app, it delivers the episodes their membership entitles them to alongside every unrestricted episode. Everyone else carries on receiving the public feed, with restricted episodes left out of it.
Members find their addresses on the page holding the
[pmpro_member_rss]shortcode, or on their membership account page. Only the podcasts their own membership gives them access to are listed, so every address they are shown is one that works for them. Two ways of signing in are supported, both of them the add-on’s own:- Member key in the address — the simpler option, and the one every podcast app can handle. The key is part of the address, so the address itself has to be treated as private.
- Basic authentication — the member supplies their WordPress username and an application password. Stronger, because nothing secret sits in the address, but only some podcast apps support it. Turn it on under Memberships Settings Advanced.
Regenerating a member’s key takes effect at once: the old address stops working, and that member has to update the subscription in their app.
-
What exactly does restricting an episode protect?
-
Restricting an episode keeps it out of the public feed, replaces the player with your restricted message on the site, and makes the episode’s download link answer “403 Forbidden” to anyone without access.
It does not encrypt the media file or move it out of reach. The file stays where you uploaded it, and anyone who already has its direct address — from a link someone shared, or from a browser’s network tools — can still open it. If you have also turned off download tracking with the
aiopod_rss_tracking_enabledfilter, to route downloads through an analytics service for example, feeds carry those direct addresses and the 403 check does not come into play at all.Where that matters, host the media on a service that issues signed addresses that expire. We are also working on built-in support for third-party storage services such as Amazon S3, which will make this easier to set up.
-
Where can I report a bug or request a feature?
-
Please open a support thread on the WordPress.org plugin support forum.
Beoordelingen
Bijdragers & ontwikkelaars
“AiO Podcast Studio: All-in-One Podcast Manager, Player & Publisher” is open source software. De volgende personen hebben bijgedragen aan deze plugin.
BijdragersVertaal “AiO Podcast Studio: All-in-One Podcast Manager, Player & Publisher” in je eigen taal.
Interesse in ontwikkeling?
Bekijk de code, haal de SVN repository op, of abonneer je op het ontwikkellog via RSS.
Changelog
1.0.3
- New: Added support for Paid Memberships Pro and its “Custom Post Type Membership Access” add-on. Select Podcasts and/or Episodes on the add-on’s settings page and your membership restrictions are then enforced everywhere they appear — single pages, shortcodes, blocks, widgets, and the player.
- New: Restricted podcasts and episodes now display the restriction message from Paid Memberships Pro instead of a generic one, so your membership levels, custom non-member text, sign-up links, and translations are all used exactly as you configured them.
- New: Restricting a podcast now restricts every episode belonging to it, so a show can be closed off without editing each episode, and episodes added later by an RSS import or a scheduled sync are covered automatically. This applies to Paid Memberships Pro and to role-based restrictions in Premium alike. Developers can turn it off with the
aiopod_inherit_podcast_accessfilter to restrict episodes individually instead. - New: Added support for the “Member RSS” add-on for Paid Memberships Pro. Members can subscribe to a podcast in their own podcast app using a feed address of their own, and receive the episodes their membership entitles them to. Everyone else continues to receive the public feed. Both of the add-on’s sign-in methods work — a member key in the address, and basic authentication with a WordPress application password.
- New: A member’s sign-in details are carried through to the episode media links inside their feed, so podcast apps can download the audio without being turned away.
- New: A member’s own podcast feeds are now listed on their RSS feeds page and their membership account page, so they can find and copy their feed addresses rather than being sent one by hand. Only the podcasts their membership gives them something extra in are listed — whether the whole show is for members, or it is a public show with members-only episodes in it.
- New: Podcast feeds now answer a repeat request with “304 Not Modified” when nothing has changed, so podcast apps that check frequently no longer download the whole feed every time.
- Fix: A restricted podcast or episode still displayed its full content, including a working player, when the restriction came from a membership plugin. This happened because our content was generated after the membership plugin had already replaced it.
- Fix: Restricted episodes were listed in the public RSS feed, exposing their title, description, and artwork, and appearing in podcast apps as episodes that cannot be played. Restricted episodes are now left out of the feed. This applies to role-based restrictions in Premium as well.
- Fix: Episode media files could be downloaded by anyone with the download URL, even when the episode was restricted. Downloads now return a “403 Forbidden” response for visitors without access. This applies to role-based restrictions in Premium as well, so files for restricted episodes are no longer reachable.
- Fix: Feed caching never took effect. The cached copy was stored in a format the database rejected, and the failure was hidden, so every request rebuilt the entire feed from scratch. Feeds are now cached as intended and are served roughly twice as fast.
- Fix (Premium): Role-based restrictions could grant back access that another access-control plugin had already denied, when restrictions were switched off globally or the episode was not individually marked as restricted.
1.0.2
- New: Added a “Try a sample feed” link below the RSS Feed URL field on the Add New Podcast screen. Clicking it fills in a sample podcast feed URL so you can test the import with a single click.
- Fix (Premium): YouTube and Vimeo episodes did not start playing when selected from the episodes list while the player’s autoplay setting was disabled.
- Fix: Switching between episodes with different source types (MP3, HLS, DASH — plus YouTube, Vimeo, and video files in Premium) could intermittently fail to load the newly selected episode.
- Tweak: The player’s download button is now hidden for streaming and embedded sources (HLS, DASH — plus YouTube and Vimeo in Premium), since these are not downloadable files.
- Tweak: Added a light background color to artwork images on the front end, providing a subtle loading state and a consistent surface for placeholder and transparent images.
- Tweak: The default tags layout is now Tag Cloud instead of List. Existing sites keep their saved layout setting.
- Tweak: Updated Freemius SDK to version 2.13.4.
1.0.1
- Fix: RSS imports could fail with a “The connection to the server was lost” error on shared hosting when downloading featured images for large feeds. Episodes are now imported in time-bounded, automatically resumable batches so imports complete reliably regardless of the host’s request execution limit.
- Tweak: Lowered the per-image download timeout and reduced the import batch size while featured-image downloading is enabled, keeping each request well within typical shared-hosting limits.
1.0.0
- Initial release.
