=== Captivate Sync === Contributors: Kieran McKeefery, Mark Asquith, Captivate Audio Ltd Tags: podcast, podcasting, podcaster, itunes, captivate, CaptivateFM, powerpress, blubrry, Buzzsprout, Libsyn Requires at least: 5.7.0 Tested up to: 6.8.3 Stable tag: 3.3.1

Captivate Sync™ is a WordPress plugin maintained and developed by Captivate, part of the Rebel Base Media family. With our background in Podcast Websites, WordPress development and podcast hosting, hundreds of independent podcasters trust Captivate Sync™ and Captivate to power their podcast brands everyday.

== Description ==

Captivate Sync™ is a WordPress plugin maintained and developed by Captivate, part of the Rebel Base Media family. With our background in Podcast Websites, WordPress development and podcast hosting, hundreds of independent podcasters trust Captivate Sync™ and Captivate to power their podcast brands everyday.

Captivate Sync™ is totally free to use and connects seamlessly to your Captivate podcast hosting account.

Captivate Sync™ helps you to publish and manage your Captivate podcasts directly within your WordPress dashboard. It's designed to save you hours of time and shave off the manual processes that come with running a podcast, so you can focus your energy on creating your show:

- Complete integration with Captivate, the world's only growth-oriented podcast host
- Manage and display your podcast episodes inside your WordPress account
- Edit, view, share and delete podcast episodes from WordPress and see changes reflected in your Captivate dashboard immediately
- Use custom shortcodes and page mapping to decide how and where your episodes display on your website
- Easy, enhanced customizations and team settings to make managing a team or multipple podcasts a breeze
- Fully compatible with all major WordPress builders and themes

== Full Captivate Sync™ features ==

= Show and episode-level podcast management =

- Manage multiple podcasts and podcast episodes without leaving WordPress
- Publish, schedule, edit and draft podcast episodes
- Automatically insert the fully responsive Captivate podcast player wherever you need it
- Use custom page mapping to create bespoke website content that reflects your brand, business or network
- Choose whether to hide or display custom links and set bespoke calls to action
- Edit or disable your comments section

= Easy enhanced customization with shortcodes =

- Automatically embedding your podcast players has always been easy with Captivate Sync™, but now you have full control over how people listen to your episodes with our Shortcode builder.
- Use list view to display a feed-like list of episodes, or use grid view to choose either 2, 3, 4, 5, 6 column layouts to suit your website’s look and feel.
- Change your featured image and podcast player position to best suit your brand and theme
- Add custom CSS to your shortcodes for consistent branding throughout your podcast website

= Customize your team settings =

- Customize and restrict access to specific podcasts to stop certain users publishing or editing content
- Set default authors

= Complete integration with Captivate, the world's only growth-oriented podcast host =

- Unlimited podcasts and uploads
- Distribute your podcast to Apple Podcasts, Google Podcasts, Spotify, Amazon and all other major podcast platforms
- Fully responsive, customizable podcast players
- Free, built-in podcast websites
- Private RSS feeds on any plan
- Innovative marketing tools to help you grow and promote your podcast episodes
- One-click PDF sponsor kit
- ...and LOADS more! Check out the full feature list.

= How to install Captivate Sync =

Setting up the Captivate Sync™ plugin is a quick process with just two steps. First, you'll need to install the plugin, then authenticate the integration.

Install Captivate Sync™ from the WordPress repository. Then, head to your *Plugins* tab, find Captivate Sync™ and click Activate.

Head on over to your Captivate dashboard. Click My Account, and then click Reveal API key.

Back in WordPress, paste the User ID and API key into the relevant boxes within Captivate Sync™.

If you need more guidance, we've put together full instructions and video steps.

= How to find help =

For help with Captivate Sync™, take a look at the FAQs and step-by-step guides in our help centre. If you can't find the answers you need, reach out to us on the support forum or get in touch via the chat feature on the Captivate dashboard.

== Frequently Asked Questions ==

= What is Captivate Sync™? = Captivate Sync™ is our dedicated free plugin for self-hosted WordPress podcast websites.

= Do I need a Captivate podcast hosting account to use Captivate Sync™? = Yes. You can use Captivate Sync™ either as a part of a podcast team or with your own Captivate account. For a full list of features, prices and to start a free 7-day trial, check out the website.

= Can I manage all of my podcasting process from my custom WordPress website? = Captivate Sync™ has been designed to work harmoniously synchronise your custom WordPress website with your Captivate podcast hosting dashboard. You can create, schedule, publish and edit, all your episodes from your WordPress dashboard, and these changes will automatically update in your Captivate account. There are some features that you will need to hop on over to your Captivate account for, including managing team members, billing changes and other account changes.

= Why is my WordPress site not updating with new episodes? = While Captivate Sync™ will automatically update your WordPress site with new episodes, occasionally you may need to manually reconnect the plugin to Captivate. This is super easy to do, and you can follow the steps to do that in our help article.

= Won't my custom WordPress website get bloated by all the mp3 uploads for my podcast? = Nope, not with Captivate Sync! Any file you upload and publish via Sync is still hosted on your Captivate account, so there is no extra files being added to your WordPress database.

== Installation == Setting up the Captivate Sync™ plugin is a quick process with just two steps. First, you'll need to install the plugin, then authenticate the integration.

1. Copy the directory from the zip file you have downloaded into the /wp-content/plugins/ folder.
2. Activate the “Captivate Sync™” plugin in your Plugin Management page.
3. Authenticate your Captivate Sync™ plugin by going to the Captivate Sync™ > Authentication page.
4. Once authenticated, go to Captivate Sync™ > My Shows and select the shows from your Captivate account that you would like to sync to your website.

For help with your installation, take a look at the FAQs and step-by-step guides in our Captivate Sync™ help centre. You can also reach support by using the chat feature on the Captivate dashboard.

== Screenshots ==

1. Edit/Publish episodes from your website.
2. List of your episodes that are synced to your website.

== Changelog ==

= 3.3.1 =

- Released on 21/01/2026
- Bug Fix: Fixed an issue where episode videos conflicted with certain page builders.

= 3.3.0 =

- Released on 28/11/2025
- Added support for custom taxonomies.
- Episode artwork validation on publish/edit now uses the same validation rules as the new specification (dimensions, files size, and format).
- Security Improvement: Addressed a vulnerability in the page mapping dropdown to prevent potential injection attacks.
- Added YouTube video link display on the Edit Episode screen when a video is available.
- Settings: Added an option to show or hide the episode video on single episode pages.
- Bug fix: Resolved an issue where episode statuses — Exclusive, Early Access, and Expired — were not syncing correctly when updated in Captivate.
- Bug Fix: Resolved an issue where the episode video was unintentionally removed when updating the episode in WordPress.
- Minor UI improvements and additional small bug fixes.

= 3.2.2 =

- Released on 21/07/2025
- Bug fix: Resolved an issue where list formatting of show notes was not preserved correctly when synced to Captivate and vice-versa.

= 3.2.1 =

- Released on 29/04/2025
- Bug fix: Resolved an issue where missing data fields in the API response caused errors during manual sync.

= 3.2.0 =

- Released on 15/04/2025
- Security Improvement: Addressed a vulnerability in the shortcode load more implementation.
- Settings: Added an option to enable or disable automatic syncing of show information.
- Settings: Added an option to enable or disable automatic syncing of new episodes.
- Settings: Added an option to enable or disable automatic syncing of existing episodes.
- Settings: Added an option to display Captivate-generated show notes as WordPress content on individual episode pages (available soon).
- Settings: Added an option to enable or disable clickable timestamps in the show notes.
- Settings: Added an option to show or hide the transcript section on single episode pages.
- Improved the podcast selection process during synchronization to prevent previously selected podcasts from being re-synced, reducing unnecessary database queries and improving overall site performance.
- Separated automatic syncing of show information, new episodes, and existing episodes into individual WordPress scheduled tasks to reduce processing load.
- Optimized episode list pagination in the admin area for enhanced performance and faster loading times.
- Implemented caching for show information to reduce database queries.

= 3.1.0 =

- Released on 07/01/2025
- Added the ability to set custom social media titles, descriptions, and images for each episode.
- Refactored episode synchronization functions for better performance and maintainability.
- Enhanced shortcode implementation for the "Load More" functionality.
- Updated the auto-sync and manual-sync processes to prioritize pulling new episodes before updating existing ones.
- Updated QuillJS to match the version used in Captivate.
- Bug fix: Resolved an issue where the link icon in the show notes editor wouldn't work on the first click after typing, but would function correctly on subsequent clicks.
- Bug fix: Addressed a potential conflict with WooCommerce shop pages on certain websites.
- Bug fix: Resolved an issue where authentication was expiring earlier than intended.
- Bug fix: Resolved a conflict with the Astra theme that affected the use of artwork as the featured image and the season and episode number formatting.
- Minor UI enhancements.

= 3.0.3 =

- Released on 27/11/2024
- Reverted the assets folder to its previous version.

= 3.0.2 =

- Released on 27/11/2024
- Bug fix: Resolved an issue where auto-sync was not triggered when a webhook failed.
- Bug fix: Fixed a problem with the shortcode not displaying the episode list when authentication tokens expired.

= 3.0.1 =

- Released on 20/11/2024
- Added support for ACF fields, including ['text', 'textarea', 'select', 'radio', 'wysiwyg', 'number', 'range', 'email', 'url', 'oembed'].
- Bug fix: Resolved an issue with the "noindex" implementation for private, exclusive, early access, expired, and disabled episodes, ensuring proper exclusion from search engine indexing.
- Bug fix: Addressed a conflict with the Divi theme when using the 'the_title' filter, which affected default posts in certain cases.
- Bug fix: Fixed a conflict with the LearnDash plugin that caused quiz results to incorrectly display 0 correct answers, even when answers were correct.
- Note: Some ACF configurations, such as conditional logic, prepend, append, and others, are not currently supported but will be included in future updates along with additional field options.

= 3.0.0 =

- Released on 28/10/2024
- Overall User Interface updated
- Settings: Allow users to change single episode slug, category archive slug, enabled or disable default archive page.
- Settings: Ability to display artwork in place of the featured image
- Settings: Ability to display season and episode number with the episode title
- Shortcode: Ability to select multiple podcasts and specific episodes
- Shortcode: Added title and read more link color options
- Shortcode: Added option to hide/show title
- Shortcode: Added option for featured image size
- Shortcode: Added option to change HTML tag for episode title
- Shortcode: Last generated shortcode will now be saved for later use
- Shortcode: Preview generated shortcode
- Shortcode: Episode featured image is now linked to the episode
- Shortcode: Added load more option
- Permalink redirect will now use the actual episode URL
- Added support for dynamic show notes
- Added duplicate episode feature
- Added ability to deactivate/activate episode
- Private, exclusive, and early access episodes will not appear on front-end queries and searches
- Add/Remove Podcasts now lets you set a default author for each podcast
- Manual sync for each podcast
- Clear auto-saved data for each podcast
- Implemented additional measures to prevent creating duplicate episodes, such as using additional unique identifier for each episode
- Podcasts database table converted to utf8mb4 (upon re-activation of the plugin) to store any Unicode character
- PHP version 8.0.0 compatibility
- Bug fixes and enhancements

= 2.0.26 =

- Released on 14/10/2024
- Removed iTunes Summary field
- Bug fix: Resolved an issue where the SEO Description field was not properly validating the maximum length of 300 characters, leading to a white screen error.

= 2.0.25 =

- Released on 07/06/2024
- Bug fix: Alternate RSS Feed will only appear on page mapped for each podcast
- Security Improvement: Addressed a vulnerability in the shortcode implementation

= 2.0.24 =

- Released on 23/04/2024
- Added support for og:audio on single episode pages

= 2.0.23 =

- Released on 06/03/2024
- Bug fix: Auto-sync via webhook not working correctly

= 2.0.22 =

- Released on 17/11/2022
- Bug fix: Transcript and episode-art upload issue
- Bug fix: Episode URLs trailing slash issue

= 2.0.21 =

- Released on 01/11/2022
- Bug fix: Open Graph image missing

= 2.0.20 =

- Released on 12/08/2022
- Bug fix: Transcription output changed to html due to the text version formatting issue

= 2.0.19 =

- Released on 27/01/2022
- Small minor fix

= 2.0.18 =

- Released on 12/01/2022
- Snippet editor has been removed from show notes field
- Improved saving of episode process to avoid duplication
- Small minor fix

= 2.0.17 =

- Released on 17/11/2021
- Excluded episodes from feed and Captivate sites will now set the episode to draft
- Set show_in_rest to true for block editors post type queries
- Bug fix: page mapping slug for Captivate feed URLs

= 2.0.16 =

- Released on 21/10/2021
- Bug fix: Page mapping conflict with Elementor
- Bug fix: 404 issue with single episode pages when using custom permalink structure

= 2.0.15 =

- Released on 08/10/2021
- Bug fix: Audio file upload

= 2.0.14 =

- Released on 30/09/2021
- Bug fix: Twitter card not recognizing the featured image
- New Captivate Player updates

= 2.0.13 =

- Released on 29/07/2021
- Shortcode featured image now linked to single episode page
- Bug fix: Not recognizing the episode show notes when Grammarly is enabled

= 2.0.12 =

- Released on 28/07/2021
- Updated show settings link

= 2.0.11 =

- Released on 01/06/2021
- Bug fix: Artwork file size error not showing if filesize is over 500kb

= 2.0.10 =

- Released on 27/05/2021
- Bug fix: Dropzone temporary fix is now removed and fully fixed
- Small minor fix

= 2.0.9 =

- Released on 18/05/2021
- Bug fix: Saving shownotes issue when using WordPress editor

= 2.0.8 =

- Released on 23/04/2021
- Added multisite support
- Auto-save bug fix

= 2.0.7 =

- Released on 014/04/2021
- Replace audio bug fix

= 2.0.6 =

- Released on 01/04/2021
- Small minor fix

= 2.0.5 =

- Released on 24/03/2021
- Small minor fix

= 2.0.4 =

- Released on 22/03/2021
- Small minor fix

= 2.0.3 =

- Released on 18/03/2021
- Added auto save to local storage for publish episode so they can get back with filled in details intact if the browser crashes, wordpress error, accidentally closed the browser, and other unforeseen disasters
- Added snippets feature
- Added transcript feature
- Remove authentication will no longer delete episodes from site (the episodes will still be re-synced) - this is for users who might need to re-authenticate
- Embedded player will now show a "Sorry, there's no audio file uploaded to this episode yet." message visible only for logged in users if there's no audio uploaded yet instead of the "This podcast is no longer hosted on Captivate"
- Bug fix: Upload timeout limit set to 500 seconds

= 2.0.1 =

- Released on 25/02/2021
- We've stripped back the plugin and added extra theme support straight out of the box
- Added shortcode feature
- Added default author option for each show
- Added podcast management for non-admin users
- Added discussion section on episode edit screen
- Added new page mapping feature for usage with custom shortcodes
- Bug fix: new published/scheduled episodes will be pulled within 1 hour
- Bug fix: Upload Audio File button not working after updating to WordPress 5.6
- Bug fix: Unable to save draft episode without audio file on Safari
- Bug fix: Page mapped for episodes not showing the correct page title on some themes

= 1.1.2 =

- Released on 09/07/2020
- Small minor fix

= 1.1.1 =

- Released on 09/07/2020
- You asked for it, we delivered - clickable time stamps!

= 1.1.0 =

- Released on 02/07/2020
- The episode specific artwork now uses the WordPress media library for uploading and processing for better error handling on dimensions so when publishing it works much better.
- We’ve now got a debug mode so we can help debug any small minor sync issues, yay!
- Fixed a small minor sync bug when an episode status is different from Captivate to Captivate Sync.
- We’ll now alert you if there is something wrong with your MP3 file when uploading via Captivate Sync :-)
- On new installations of Captivate Sync it will now run every 10 minutes to ensure no pesky episodes have been missed when published and scheduling dates is off.
- Fixed an issue with episode date and those pesky timezones.
- We’ve also done a full sweet and removed lots of unnecessary code, who else loves a clearout?!

= 1.0.12 =

- Released on 11/02/2020
- Added the option for a custom captivate.php page for styling inside your theme template.
- Also adding a single-captivate_podcast.php will style the single page for you devs out there.
- Small bug fix

= 1.0.11 =

- Released on 12/12/2019
- Happy holidays!
- Added option for WordPress WYSIWYG editor
- Added SEO title and description to episodes.
- Small bug fix

= 1.0.10 =

- Released on 28/11/2019
- Sets the default slug to /captivate-podcast

= 1.0.9 =

- Released on 21/11/2019
- Fixes an issue when creating scheduled or draft episodes

= 1.0.8 =

- Released on 20/11/2019
- Fixes an issue when creating an episode with the slashes in content
- Make the tagging system more similar to how WordPress works naturally

= 1.0.7 =

- Released on 18/11/2019
- Fixes an issue when you edit an episode it changes the slug after having it set.
- Adds an update to the Twitter card when sharing an episode.
- Sends the slug file both up and down to Captivate to ensure slugs don’t get compromised.

= 1.0.6 =

- Released on 15/11/2019
- Fixes an issue where the Sync was moving very quickly before WordPress saved the new post.

= 1.0.5 =

- Released on 06/11/2019
- If user is not logged in, redirect to authentication screen
- If user has no Captivate shows, give option to add a show
- Only users with the right access can trash items.

= 1.0.4 =

- Released on 04/11/2019
- Fixes an issue with Clipboard JS in queue

= 1.0.3 =

- Released on 04/11/2019
- Fixes an issue with Clipboard JS for older versions of WordPress

= 1.0.2 =

- Released on 04/11/2019
- Changes to WordPress readme file and include extra special asset

= 1.0.1 =

- Released on 04/11/2019
- Changes to WordPress assets and minor change.

= 1.0.0 =

- Released on 27/10/2019
- Initial release of Captivate Sync™

== Support == https://help.captivate.fm

== Twitter == http://twitter.com/captivateaudio