Sermon Manager


Sermon Manager is the #1 WordPress Sermon Plugin

Sermon Manager is designed to help churches easily publish sermons online. Some of the features include:

  • Add Speakers, Series, Topics, Books, and Service Types
  • Attach images to sermons, series, speakers, and topics
  • Attach MP3 files as well as PDF, DOC, PPT (or any other type!)
  • Bible references integrated via for easy text viewing
  • Completely integrated with WordPress search
  • Embed video from popular providers such as Vimeo or YouTube
  • Full-featured API for developers (check it out at /wp-json/wp/v2/wpfc_sermon)
  • Full-featured iTunes podcasting support for all sermons, plus each sermon series, preachers, sermon topics, or book of the Bible!
  • Import sermons from other WordPress plugins
  • PHP 5.3+ – you can use Sermon Manager even with older websites!
  • PHP 7.1 ready – Sermon Manager is 100% compatible with latest PHP version
  • Super flexible shortcode system
  • Supports 3rd party plugins such as Yoast SEO, Jetpack, etc
  • Quick and professional free and paid support
  • Works with any theme and can be customized to display just the way you like. You’ll find the template files in the /views folder. You can copy these into the root of your theme folder and customize to suit your site’s design.

One-Click Importing

Sermon Manager supports migration/importing from other popular sermon plugins, such as Sermon Browser and Series Engine.

This is a one click process and currently only supports migration/importing within existing WordPress installations.
Soon you will be able to migrate from those 3rd party plugins to Sermon Manager on a separate server. (for example: moving to completely new website & WordPress installation)

Popular Shortcodes

  • [sermons] — This will list the 10 most recent sermons.
  • [sermons per_page="20"] — This will list the 20 most recent sermons.
  • [sermon_images] — This will list all sermon series and their associated image in a grid.
  • [list_sermons] — This will list all series or speakers in a simple unordered list.
  • [latest_series] — This will display information about the latest sermon series, including the image, title (optional), and description (optional).
  • [sermon_sort_fields] — Dropdown selections to quickly navigate to all sermons in a series or by a particular speaker.

For more information on each of these shortcodes please visit our knowledge base.

Expert Support

The Sermon Manager is available as a FREE download however in order to maintain a free version we offer premium support packages for those who need any custom assistance. Paid support means you get exclusive access to the Sermon Manager forum as well as support tickets. This is also a way you can donate to the project to help us offer prompt support and a free version of the plugin.

You can access the paid support options via our website.

Bug fixing and fixing unexpected behavior is free and always will be free. Just make an issue on GitHub or create a support thread on WordPress and we will solve it ASAP.


Would you like to help improve Sermon Manager or report a bug you found? This project is open source on GitHub!

(Note: Please read contributing instructions first.)

WP for Church

  • WP for Church provides plugins and responsive themes for churches using WordPress.
  • Keep up with the latest product news & tips, sign up to our newsletter!


  • Sermon Details
  • Sermon Files


Installation is simple:

  1. Just use the “Add New” button in Plugin section of your WordPress blog’s Control panel. To find the plugin there, search for Sermon Manager
  2. Activate the plugin
  3. Add a sermon through the Dashboard
  4. To display the sermons on the frontend of your site, just visit the if you have permalinks enabled or if not. Or you can use the shortcode [sermons] in any page.


Installation Instructions

Installation is simple:

  1. Just use the “Add New” button in Plugin section of your WordPress blog’s Control panel. To find the plugin there, search for Sermon Manager
  2. Activate the plugin
  3. Add a sermon through the Dashboard
  4. To display the sermons on the frontend of your site, just visit the if you have permalinks enabled or if not. Or you can use the shortcode [sermons] in any page.
How do I display sermons on the frontend?

Visit the if you have permalinks enabled or if not. Or you can use the shortcode [sermons] in any page.

How do I create a menu link?

Go to Appearance → Menus. In the “Custom Links” box add as the URL and Sermons as the label and click “Add to Menu”.

I wish Sermon Manager could…

We are open to suggestions to make this a great tool for churches! Submit your feedback at WP for Church

More Questions?

Visit the plugin homepage


Great Plugin with running development – great features

I really like this plugin. It becomes better and better after each update.

Especially for churches, who want’s to automatically upload it’s sermon to wordpress, we found a solution with the “Sermon Manager Import” Plugin, which is working good.
We save all informations in the ID3-Tags of the mp3-File and auto-upload it.
If this feature will be built in, officially, we would pay for it!
Because other paid plugins like “series engine” can’t hold on :-)-

Great support and great development! Thank you all!

Excellent Plugin and Support

I had a couple unique bugs with their new import from Series Engine feature but they quickly made a fix and everything is working perfectly. I love the ease of use of this plugin.

Sermon Manager has turned a corner. Awesome support!

I just need to give a shout of thanks to Nikola and the awesome new team at They have really turned a “good but neglected” plugin into a powerhouse of focus and great support. Had several issues and customizations that they helped with promptly. Thank you!!

Works fantastically

This plugin is great. Been using it for over 3.5 years now. The support and updates have been fantastic, __especially__ since it’s free. My church’s podcast is now in iTunes and Google Play from this plugin. Sermons are a special niche of podcasting and I love how well this plugin handles the scripture references, topics, preachers, and more. It’s truly well done!

Great Plugin! Amazing Support!

Igor and the crew are great. This is definitely the best sermon plugin out there. Support, even without a support plan, is the best! Highly recommend if you are looking for a sermon manager that makes having a podcast easy.

Read all 31 reviews

Contributors & Developers

“Sermon Manager” is open source software. The following people have contributed to this plugin.


Translate “Sermon Manager” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Fix: Sermon date not being saved when date format is changed
  • Fix: YouTube short URL was not being detected (thanks @macbookandrew)
  • Fix: Excerpt saving as “1” when there’s no sermon description
  • Dev: Added more filters for output
  • Dev: Added setting for disabling post_content and post_excerpt creation


  • Change: Remove accidentally added search form from PR #159
  • Fix: Attachments not being downloaded when clicked on them
  • Fix: Sermon content not appearing in excerpt
  • Fix: Sermon dates not saving


  • Fix: Fatal error on update because of not-loaded function


  • New: Added a debug tab in settings
  • New: Added an option to disable book order in book filter dropdown
  • New: Now you can use Sermon Manager and Sermon Browser shortcodes at the same time.
    Just change [sermons] shortcode to [sermons_sm] where you want to have Sermon Manager
  • New: Option to show attachments on archive page (thanks @tstephen!)
  • New: Reftagger will be on Spanish if WordPress is set to any Spanish variant
  • New: There’s now a way to force usage of Sermon Manage update files (in debug tab)
  • Change: Player setting now controls video player as well
  • Change: Sermon content will now be saved to the database as plain text instead of HTML,
    thus making search results appear normal
  • Fix: API not accepting some parameters during sermon creation/update
  • Fix: Book filter dropdown will now show books that can’t be ordered at the bottom
  • Fix: Fatal error on archive pages
  • Fix: Removed “This is where you can add new sermons to your website.” from showing on archive pages
  • Fix: Removed a small possibility of having settings data removed on update
  • Fix: Sermon Settings default values not being initialized on install
  • Fix: Sermon video link not being saved properly
  • Fix: Sermons that were set to same date were not sorted by time
  • Fix: URL issues when home URL differs from site URL
  • Dev: Add a parameter to sm_the_date() for usage outside The Loop
  • Dev: Add an option in Debug settings for debugging import process
  • Dev: Add an option in Debug settings to execute any update function at any time
  • Dev: Add filters for customizing display
  • Dev: Add filters to modify sermon content and excerpt in database
  • Dev: Change Reftagger URL to HTTPS
  • Dev: Fix checkbox settings value being checked when it shouldn’t by default
  • Dev: Make sure that update functions are marked as done on execution end
  • Dev: More progress on RSS file override
  • Dev: Remove obsolete Error Recovery functions, CSS, and JS files
  • Dev: Remove unnecessary CSS files


  • Fix: Invalid podcast XML (duplicated sermon content item)


  • Fix: Invalid podcast XML (duplicated feed version attribute)
  • Fix: Sermons from old Series Engine installations not importing
  • Dev: More filters for customizing display


  • New: Added option in filtering shortcode to filter only in a specific series
  • New: Added option to pick more players for playing sermons
  • New: Added an option to redirect podcast
  • Change: Improved XML feed formatting
  • Change: Replace with
  • Change: Sermon Browser will import stats as well now (needs re-import, existing data won’t duplicate)
  • Fix: Certain URLs were not working under and other websites that have different home and site URLs
  • Fix: Date was not being localised
  • Fix: There was a fatal error during sermon deletion on PHP 5.4<
  • Fix: Sermon Browser audio URL not working if default path is changed in Sermon Browser settings (needs re-import, existing data won’t duplicate)
  • Fix: Warning in latest_series shortcode
  • Fix: Warning during partial sermon import


  • Fix: Sermons can be imported again after deleting
  • Fix: Fatal error on PHP 7.2
  • Fix: Imported sermons not being ordered by date
  • Fix: Remove unnecessary paragraph nesting on archive pages


  • Fix: 404 page on some hosts after update
  • Fix: Admin search bar not working
  • Fix: Checkboxes not working on settings page
  • Fix: Shortcode producing a warning
  • Fix: Sub-Category not saving in podcast settings


  • Fix: Remote Sermon Browser URLs mistakenly being imported as local URLs


  • New: Admin – Add filter by Service Type
  • New: Import and export sermons, series, preachers, and more! (you can migrate from other plugins to Sermon Manager now)
  • Change: Admin – Improved All Sermons view
  • Change: Admin – Rewrite settings code – more stable and secure now
  • Change: Modify Books in filter to be sorted by biblical order
  • Change: Remove Error Recovery
  • Fix: “Settings” URL on plugins page
  • Fix: Admin – Fix sorting by columns
  • Fix: Feed not working on sites that don’t have pretty permalinks turned on
  • Fix: Filtering sometimes not working
  • Fix: Preached date being wrong in some cases
  • Fix: Relative audio URLs in podcasts
  • Fix: Series & preacher admin pages not having proper thumbnails & generating error on some hosts
  • Fix: Series not showing up when sorted by date
  • Fix: Sermon archive page ordering being ascending sometimes
  • Fix: Shortcodes not working when broken quotes
  • Fix: Shortcode ordering not respecting Sermon Date
  • Fix: Some strings in Admin area were not being translated
  • Fix: Taxonomy images need resaving on some hosts to work
  • Fix: Timezone offset in Preached date


  • Fix: Service Type not being assigned (fixes sermons not appearing under some configurations)


  • Change: Revert to old rendering engine, until we fix new one


  • Fix: Fatal error when using plugin views
  • Fix: Sermons having to be re-saved to work
  • Fix: Update functions being executed multiple times
  • Fix: Update functions not being executed for users who skip versions


  • Fix: Sermon audio not showing up
  • Fix: Sermon not updating on first save
  • Fix: Sermon video embed not saving
  • Fix: Styling of attachment links


  • Change: Disable error recovery since it’s causing too many issues
  • Fix: Couple bug fixes for PHP 5.3


  • Fix: A PHP notice on new sermon creation
  • Fix: Sermon date not saving on first save
  • Fix: Sermons preached before 09/09/2001 not showing up
  • Fix: Fix confusion regarding date field (remove placeholder value)


  • New: Better compatibility with themes and search
  • New: Better support for templating plugins (Elementor and Visual Composer, to mention some)
  • New: More stable code for updating database structure
  • New: Support for PHP 5.5, 5.4, and 5.3 but we still recommend to use at least PHP 5.6
  • Change: All language strings rewritten (huge thanks to @GITNE)
  • Change: Show all options in filtering dropdown — even if they don’t have associated sermon
  • Fix: image_size not working in [sermons] shortcode
  • Fix: 404 when “Common Base Slug” option is changed
  • Fix: Admin menu icon not being blue on hover
  • Fix: Compatibility with PHP 5.3
  • Fix: HTML syntax for filtering
  • Fix: Recovery catching 3rd party errors
  • Fix: Styles not loading when [sermons] shortcode is used without filters


  • Fix: Fix 404 on series, preacher, topic, book, and service type pages


  • Fix: Crash on servers that do not have MBString extension
  • Fix: Sermon page sometimes giving 404
  • Fix: Shortcode ordering/no sermons


  • New: Automagical error recovery – no more unusable websites
  • New: Jetpack Publicize and Omnisearch support for sermons
  • New: REST API support
  • New: Support for different plugin languages
  • New: WordPress search support for sermons
  • Change: “Date Preached” field optional
  • Fix: Filtering/sorting
  • Fix: General performance and compatibility fixes
  • Fix: Lots of minor bug fixes
  • Fix: New sermons not appearing
  • Fix: New sermons not working on some servers
  • Fix: Sermon ordering
  • Fix: Sermon time not being correct when using “Date Preached”
  • Fix: Widget styling


  • New: More <span> elements for more styling options
  • Fix: Podcast feed not working


  • Fix: Custom preacher slug not working
  • Fix: Fatal error on old PHP versions


  • New: Add back Sermon dates
  • New: More filters for the shortcode
  • Fix: PHP warning regarding sorting
  • Fix: Space character is being URL encoded twice
  • Fix: Taxonomy images not working on initial plugin install (and sometimes for existing ones as well – needs plugin re-activation)


  • Change preacher slugs as well when changing preacher label in settings
  • Fix spelling error (thanks @tythewebguy)
  • Fix filtering not working on a subpage
  • Fix a security concern (GitHub issue #87)
  • Fix preacher image upload button & title not respecting preacher label
  • Fix wrong dialog title for Sermon Series image picker
  • Fix archive slug change needs saving of settings two times
  • Fix taxonomy image errors on first plugin install
  • Fix copyright symbol not appearing correctly


  • Fix fatal error on older PHP versions


  • Add media functions in the sermon editor
  • Add options to filtering shortcode
  • Fix filtering shortcode sometimes making 404 on filter
  • Fix PHP warning not dismissible
  • Tweak sermon audio length field description (thanks @macbookandrew)


  • Fix paragraphs in podcast feed description
  • Fix podcasts not validating with exotic mp3 file names
  • Fix double URLs appearing in sermon downloads
  • Fix sermons not appearing in shortcodes


  • Fix filtering styling being broken


  • Fix new sermons not appearing
  • Fix couple PHP warnings
  • Fix filtering in shortcode


  • Fix featured image not working


  • Fix PHP notice in the footer
  • Fix slashes in RSS feed
  • Fix podcast cover image not selecting
  • Fix first sermon image showing up as podcast cover image when none selected
  • Fix all dates issues (please allow the page to load after the update, it will take a minute; if you stop the load, please open <your website URL>/wp-admin/?sm_fix_dates)
  • Removed “Date” field (left side) in Sermon edit screen, “Published” date (right side) will be used from now on
  • Removed “Fix Dates” option tab, it’s not necessary anymore
  • Removed all warnings and error related to dates
  • Replaced old media manager with new one for podcast cover image


  • Add a setting to define podcast count
  • Fix a bug that caused WSOD on some hosts
  • Fix a bug that prevented settings to save on some hosts


  • Fix error that rendered website unusable on some hosts
  • Fix double line-breaks in the podcast description not changing into HTML paragraphs
  • Make new podcast HTML tags option disabled by default


  • Fix shortcode pagination broken on front page (thanks @antgiant)
  • Fix new audio player not loading on some old themes
  • Add an option to show key verse in “Recent Sermons” widget
  • Add HTML tags display in podcast description (can be disabled in settings)
  • Improve scripts & styles loading (website performance improvements)


  • Fix HTML formatting
  • Fix new player duration always being 0:00 on initial load
  • Fix Sermon date breaking the website in some special circumstances


  • Fix Sermon Manager interfering with regular post dates under some circumstances
  • Fix fatal error when using UpdraftPlus
  • Fix fatal error for longtime Sermon Manager users (thank you <3)
  • Fix audio URL duplication in “Download Files” section
  • Fix date checking URL
  • Fix scripts and styles not loading when shortcode is used in ordinary posts
  • Fix new player styles not loading


  • Fix fatal error for podcasts


  • Add a setting for Sermon date format
  • Add a filter for changing sermon image link (thanks @macbookandrew)
  • Add Polish translation (thanks @GITNE)
  • Fix podcast feed not validating because of an non URL encoded ampersand in the Sermon image URL
  • Remove sermons that don’t have mp3 files assigned to them from podcast XML file
  • Performance improvements
  • Miscellaneous bug fixes


  • Improve backend performance
  • Fix topics list in backend sometimes being corrupted


  • Fix a typo in “Sort by Preacher” table column
  • Fix a PHP warning when a sermon is created with Service Type set to “None”
  • Fix Sermon Audio removing/uploading in backend not working


  • Allow displaying of audio and video at the same time
  • Fix new audio player conflicting with other elements
  • Fix not showing on sermon archive pages
  • Fix not loading over HTTPS


  • Fix shortcodes compatibility issue
  • Fix [sermons] shortcode ordering


  • Add an option to change “Preacher” to whatever user wants (“Teacher”, “Speaker”…)
  • Fix series image shortcode not working properly
  • Fix disappeared bible passage
  • Core improvements


  • Add orderby argument for [sermons] shortcode. How to use:
  • Add an option to switch between the old and the new MP3 player
  • Fix some cases where PodCast feed is invalid


  • Fix crash on PHP <5.5 (for real this time)
  • Fix sermon MP3 file name while downloading


  • Fix crash on PHP <5.5


  • Fix podcast feed date being invalid when used on website with non English language
  • Fix crashing on older PHP versions


  • Allow Sermon Manager usage on old PHP versions
  • Fix shortcode not working


  • Fix plugin crashing. Add missing files.
  • Remove old screenshots


  • Fix book sorting bug
  • Fix issue where podcast enclosures are sometimes duplicated
  • Fix sermon topics custom view not loading
  • Fix dashboard icon not displaying
  • Fix not displaying correct sermon dates
  • Fix parenthesis displaying when service type is not specified
  • Fix not loading over HTTPS
  • Add date fixing feature – should fix most of date-related bugs
  • Add a new player for MP3 files
  • Add PodTrac Support (thanks @reykroona)
  • Add warning if user is using PHP version less than 5.6.0
  • Simplify shortcodes


  • Fix another date error
  • Revert fix for “fatal error with date processing”, since it caused issues for some users
  • Fix video width being too wide
  • Fix microphone issue


  • Fixed fatal error with date processing
  • Fixed some PHP 7 warnings
  • Added better shortcode book sorting


  • Fix date warning in the Date Preached column
  • Fix downloads not showing notes and bulletin
  • Fix taxonomy images not working on new installs
  • Fix various bug fixes with feeds
  • Fix Yoast SEO XML sitemap not working with SM – Please re-save settings and permalinks
  • Fix image chooser not opening correctly when user clicks on series/preacher image (browser cache might need to be cleared)


  • Fix: Sermon Archive shortcode wasn’t displaying properly


  • Fixed error where saving anything in admin caused a php notice
  • Fixed setting page and notice to re-save settings even after user had saved
  • Updated sermon archive to show new sermon sorting fields function


  • Fixed error causing sermons views to not count
  • Fixed several issues with classes being called improperly


  • Fixed legacy support and functionality for video embed
  • Fixed podcast error causing duplicate entries


  • Fixed backwards compatibility issues
  • Fixed issue with service type dropdown


  • Massive update to core code with php7 compatibility
  • Bulletin file upload
  • Updated dependency libraries
  • Updated Views
  • Use YouTube/Vimeo link (with legacy support for old video embeds)


  • Bugfix podcast title is fixed in WP 4.4
  • Multiple non-fatal errors have been fixed


  • Bugfix podcast title is taken from Settings Page
  • Bugfix podcast no longer has any missing sermons
  • Bugfix properly strip html from podcast summary


  • Bugfix trailing / removed from podast feed
  • Bugfix don’t include enclosure in podcast if there is no audio file
  • Bugfix [list_sermons] order/orderby attributes now work as expected
  • Bugfix hide_nav works correctly in the [sermons] shortcode
  • Bugfix setting defaults on activation now works correctly


  • Now actions are used to load sermon content in a theme: sermon_single & sermon_excerpt. This makes it easy to override the content by removing the default action and adding your own custom action.
  • Bugfix [sermon_images] shortcode now displays the description correctly
  • Added podcast feed for service types


  • Improve setting MP3 duration; allow user to edit duration if not set accurately



  • NEW FEATURE: Podcast feeds for every Preacher, Service Type, Series, Bible Book, and Topic.
  • NEW FEATURE: New shortcode to display the latest sermon series image [latest_series] (many options including displaying by service type)
  • NEW FEATURE: Admin columns are now sortable – props to @khornberg
  • NEW FEATURE: All media is now uploaded to a custom folder /sermons under /uploads. This will allow easier media management and exclusion from backups (if desired)
  • Remove mediaelement audio player and use the built in mediaelement (now requires WordPress 3.6+)
  • Remove dependency on wp-pagenavi for shortcode pagination
  • Resolved issue with media player not displaying with shortcodes


  • Require WordPress 3.6+
  • Use built in mediaelement player


  • Fixed errors with saving settings for some users (remove dependency on CURL)


  • Improved podcasting performance – props @livingos
  • Cleaned up options page with tabs, added hooks for other plugins to hook into the option page.
  • Fixed bug causing sermons to display 2x


  • Updated the way attachments are displayed. Now they will be available for download even if not attached to the sermon.
  • Fix sermon-images shortcode


  • Compatibility with WordPress 3.6


  • Disable a filter that was causing problems in some themes (added in 1.7)


  • Fix a few bugs introduced in 1.7


  • Improved many areas of the code; organized files
  • Made a new permalink structure possible with a common base slug across all taxonomies, e.g. sermons/preacher or sermons/series.
  • Added new template tag for the podcast URL
  • Add series, preacher, topic, and book to post class
  • Trim taxonomy description in Admin
  • Improve widget CSS
  • Add missing filter for template files
  • Add template tags to show preacher and series info on individual sermons
  • Allow service type to be empty
  • Use date option set in WordPress settings instead of hardcoded format
  • Resolve $wpfc_entry_views error with PHP 5.4
  • Cleaned up CSS ids and classes to be compliant code


  • Improved localization & added French translation
  • Updated mediaelements.js to the latest version
  • Change Service Types to a custom taxonomy so you can add/edit as you wish (you’ll see an admin notice to refresh your database)


  • Added comma separator in case of multiple speakers or multiple series
  • Added speaker name to widget
  • Added “sort by Book” to sermon sort fields


  • Fix settings for


  • Added an action wpfc_settings_form to add fields to the settings page
  • Fixed bug with sermon topic dropdown


  • Properly prefixed the entry views function to prevent conflicts


  • Only load admin scripts and styles on Sermon pages


  • Improve CSS for Chrome
  • Add the option to include the audio player in archive view
  • Fix display issues on some themes in archive view


  • Improve page navigation styles with shortcode
  • Improve admin interface & added a “Sermon Notes” field
  • Fixed the views count for sermons
  • Update function to add images to series & preachers
  • Added podcasting with iTunes
  • Properly enqueueing all JavaScript and CSS
  • New template tags for easier theme customization
  • Added new taxonomy “Book of the Bible” to allow easy sorting of sermons
  • Display a grid of images assigned to speakers or series with a new shortcode [sermon-images]
  • Display a list of sermon series, preachers, sermon topics, or book of the Bible with a new shortcode [list-sermons]


  • Bug fix with menu not showing in some themes


  • Bug fix with Service Type not saving correctly


  • Added a settings page
  • Now translation ready!
  • Added styling to the Recent Sermons Widget
  • Added featured image to individual sermons
  • Added images to sermon topics
  • Created new functions to render sermon archive listing and single sermons
  • Added better sorting fields on archive page
  • Added shortcode to insert sort fields – [sermon_sort_fields]


  • Enhanced shortcode to allow for Ajax pagination
  • Requires a plugin for pagination in shortcode to work:



  • Now you can add images to sermon series and preachers!
  • Widget now includes the sermon date
  • Added icons for audio and video attachments


  • Theme developers can add support for sermon manager to their theme with add_theme_support( 'sermon-manager' ); in functions.php. For now, this will disable the loading of the jwplayer javascript
  • Bug fix to load javascript for sermon player and verse popups on single sermon pages only
  • Minor CSS fix to increase font size of popup Bible passages


  • Bug fixes so everything saved correctly when doing autosave, quick edit, and bulk edit
  • Minor CSS fix for icon to display with additional files


  • Bug fixes to templating system
  • Minor CSS fixes


  • New much improved templating system!
  • Bug fixes related to the loading of JavaScript and CSS


  • Fixes related to WordPress 3.3; takes advantage of new tinymce editor


  • Added WYSIWYG editor to the sermon description field


  • Added Widgets


  • Bug Fixes


  • Initial public release