Yii 2 Podcast hosting module
- Host unlimited podcasts & episodes in
- Playback statistics (downloads, referrals, playback locations etc.)
- Tool to create episodes’ show notes: just write comment as you listen to the podcast, and a timestamp will be automatically added to the note
- Podcast notes
- Generate XML/RSS feed for iTunes etc
- Feedburner (or any external feed service) support
podcaster playback will continue to work and write stats even if your database is temporary down (e.g. your VPS is rebooting, or there is maintenance; see documentation below).
podcaster module as well as a complete & ready to roll application.
- PHP, MYSQL
- FTP access to upload episodes
This module is a standard Yii2 Application module - you can add it to an existing Yii 2 app. There is an example application provided with the code, based on Yii 2 Basic application template.
Below you will find instructions on how to setup both options.
Configure your database connection in file
example/config/db.php. You can also just create
yii2basicdatabase accessible to
rootuser without using password.
Install composer packages by running command
php composer.phar install
- Run migrations:
php example/yii migrate --migrationPath=./src/podcaster/migrations
- Point your server (
example/webfolder. Go to your website and enjoy! (see
Usagesection of this readme)
podcastermodule to your config (usually it's
'modules' => [ 'podcaster' => [ 'class' => 'webkadabra\podcaster\Module', 'layout' => '//podcaster', 'uploadPath' => '@app/media/', // upload podcasts to www-unreachable directory ], ]
- Add urlRules to your config:
// ... 'components' => [ 'urlManager' => [ 'enablePrettyUrl' => true, 'showScriptName' => false, 'rules' => [ [ 'pattern' => 'podcast/<podcast:\w+>/feed', 'route' => 'podcaster/feed/feed', 'suffix' => '.xml' ], [ 'pattern' => 'podcast/<podcast:\w+>/feed-<dest>', 'route' => 'podcaster/feed/feed', 'suffix' => '.xml' ], [ 'pattern' => '<channel:\w+>/stream/<episodeId>', 'route' => 'podcaster/traffic/stream', 'suffix' => '.mp3' ], [ 'pattern' => '<channel:\w+>/<episodeId>', 'route' => 'podcaster/traffic/download', 'suffix' => '.mp3' ], ], ], ],
Then, run migrations from your application root folder:
php yii migrate --migrationPath=vendor/webkadabra/src/podcaster/migrations
- Create podcast via "Podcast Management" menu
- Upload your podcast episodes to a configured folder (by default, it's
mediafolder in the root path of your app) with your favorite FTP client (
- Add podcast episodes via "Episodes" menu
Hey guys, I'm disabled developer that can't hold a job in the office. If you can - support my opensource, I gotta keep the cats fed. Thanks!
Bitcoin address (I can not accept Paypal in my country):
- Upload via UI (not supported at the moment)
- Episodes Tags
- Data export (shownotes etc.)