| 开发者 |
aiopodcasting
freemius |
|---|---|
| 更新时间 | 2026年8月22日 23:32 |
| 捐献地址: | 去捐款 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
View Demo | Getting Started | Contact & Support | Home PageAiO 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. https://www.youtube.com/watch?v=GsDv9gA-Ipg&rel=0
aio-podcast-studio folder to /wp-content/plugins/ via FTP, or use Plugins → Add Plugin → Upload Plugin.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.
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.
No. You can create an unlimited number of podcasts, episodes, categories, tags, and participant profiles.
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.
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.php file or a custom plugin:
add_filter( 'aiopod_feed_episodes_limit', function() { return 500; } );
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.php file or a custom plugin:
add_filter( 'aiopod_feed_cache_enabled', '__return_false' );
Yes. Each podcast is an independent post with its own RSS feed URL, settings, episodes, and participants.
All statistics data is stored in your own WordPress database. No data is sent to external services.
Yes. All user-facing strings use the aio-podcast-studio text domain. The plugin ships with a .pot template file in the languages/ directory.
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.
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.
Yes, although the plugin's own Podcast Categories and Episode Tags are the better fit for most sites: they are what your RSS feed publishes to Apple Podcasts and Spotify, and their pages are rendered by the plugin with your artwork and player. The standard WordPress categories and tags are worth adding when your podcast sits alongside a blog and you want one structure across everything you publish, or when you already use other plugins that work with them. They come with a few limits, described below.
To switch them on, go to Settings → General → WordPress Categories & Tags and tick one or both. The setting is off by default, and your own Podcast Categories and Episode Tags carry on working exactly as before — this adds a second set of boxes, it does not replace the first.
Once it is on, your podcasts and episodes are listed in your site's own /category/…/ and /tag/…/ archives beside your blog posts, so someone browsing that subject finds your audio as well as your writing. Those archives are drawn by your theme, not by this plugin, so a podcast appears there looking like an ordinary blog post — no player, no episode count. The terms are not shown on the plugin's own output either: single podcast and episode pages, episode lists and the player continue to show your Podcast Categories and Episode Tags only. If you want the boxes purely for organising your own content, untick "Include in WordPress Archives" in the same settings section.
Your RSS feed is not affected either way. Turning the setting back off removes your podcasts and episodes from those archives but keeps everything you filed, so switching it on again restores your work exactly as it was.
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.php file or a custom plugin:
add_filter( 'aiopod_inherit_podcast_access', '__return_false' );
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.
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:
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_enabled filter, 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.
Please open a support thread on the WordPress.org plugin support forum.
aiopod_import_parsed_podcast and aiopod_import_parsed_episode filters.aiopod_inherit_podcast_access filter to restrict episodes individually instead.