By populating a MySQL database table with all the information about the podcasts you can automatically create the posts needed for podcasting with the Blubrry PowerPress plugin. This will allow you to post as draft or published and switch between the two as well as delete posts. Probably not useful to actual Podcasters, but it works for what I needed.
Information required from the database:
- Database Name
- Database Table Name
- Database Username
- Database Password
Also field names from the database which will be used for the following:
- Primary Key Field
- Post Body
- Featured Image(URL to an image)
- Media URL
- Media size
- Media type
- Date posted
Your categories need to be setup prior to using this.
Example database table for importing from
You may use the following database table as an example template for your database.
CREATE TABLE episodes ( episode_id int(11) NOT NULL, episode_title varchar(255) NOT NULL, episode_category varchar(255) NOT NULL, episode_body text NOT NULL, episode_image_url varchar(4000) NOT NULL, episode_url varchar(4000) NOT NULL, episode_length int(11) NOT NULL, episode_content_type varchar(20) NOT NULL, episode_date date NOT NULL, PRIMARY KEY (episode_id) ) DEFAULT CHARSET=utf8;
Note: You must have at least one record in the database table before you can enter the database column fields in this plugin.
- How should I set up the database table?
- Create fields that correspond to those on the MySQL Fields page of the plugin ( Post Title, Post Category, Post Body, Post/Featured Image URL, Podcast URL, Podcast Size, Podcast Media Type, Post Date ).
- Make sure to include a primary key.
Note: Guid uses your primary key. appended to the site’s root URL.
- Does the MySQL table have to be on the same DB Host as my WordPress install?
No, but it helps. You will need to make sure you have remote access to the MySQL database if it’s on a different host. I have a site on DreamHost using a database on HostGator and it works great.
- Released 06/14/2016
- Updated plugin for WordPress version 4.5+
- Created extended class for connecting to database to bypass connect to database error page if connection failed.
- Fixed bug with
find_podcast_by_id()function not using the primary_key column.
- Fixed bug with
does_field_exist()function not using the table member variable (was hard coded to use ppfm database table).
- Updated the
_publish_post()function to optionally include data if it’s avaialble or skip otherwise.
- Changed the way media_handle_sideload was being used
- (note: Most of this work was done months ago. I got busy and forgot about it)
- Rewritten from the ground up
- Learned a lot about WordPress
- Learned a lot about Git, too.
- Added check to ensure BluBrry PowerPress is installed and activated
- More CSS and HTML changes in an attempt to pretty this thing up a bit
- Changed code to allow for localization
- Used Google Translate to create .mo files for:
- Spanish – Spain/Ecuador
- Danish – Denmark
- Included a Primary Key field in the settings page
- Added ability to set the status of posts as either Published or Draft
- Made some aesthetic changes to the settings page using some CSS and jQuery
- Removed some unused code and comments from process.php
- Added database connectivity checking.
- Added check to prevent posting same podcast twice based on the podcast/post title.
- Added ability to post from a range of records in the table based on a specific database field.
- Added display of total records in table.