Plugin Directory

Test out the new Plugin Directory and let us know what you think.

YouTube Channel

Show video thumbnails or playable blocks of recent videos from YouTube Playlist, Channel (User Uploads), Liked or Favourited videos. (20170114)

  • Add opt-in option Freemage Video Downloader
  • Code cleanup: delete unused admin.js file
  • UI cleanup: enhance checkbox control in settings
  • UI cleanup: update option names like 'What to show' is now 'Embed as', 'Hide related videos' to 'No related videos' , etc (20170110)

  • Add option to select Title HTML tag (default to H3) (20170110)

  • Fix Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM, expecting ')' in /plugins/youtube-channel/inc/settings.php on line 218

3.0.10 (20161231)

  • (20161225) Optimize: Remove extract() from shortcode parser
  • Code cleanup and fixing to be compliant with WordPress Core coding standards
  • Test compatibility with WordPreee 4.7 and PHP 7.0.14
  • (20161224) Change: Update notification for missing YouTube Data API Key
  • Change: Do not display shortcode options changes for fresh installation
  • (20160824) Change: HTTP to HTTPS links and open remote links on settings page in new tab/window
  • Change: Disable deprecated notification related to old v2.4 of plugin
  • (20160419) Fix: resource from globals used if in widget set to use User uploads as resource.
  • Enhance: Implemented Selective Refresh Support for Widget (WP 4.5)
  • (20160131) Fix: prevent PHP Notices for Settings page.
  • Fix: Cache feed option in widget can't be disabled (always revert to default).
  • Fix: Open link in option in widget always revert to default.
  • Security: prevent direct loading of settings and widget files.
  • (20160120) Optimize: replace yt_play.png with optimized image.


  • Fix: broken autoplay when start to play all videos instead only first in YTC block set
  • Fix: remove $_SESSION variable and replace with class variable to avoid duplicate sets of JS code

  • Fix: Set Hide link for Link to option for Link to Channel in global setting does not work (reported by drweby2).
  • Change: Set minumal required WordPress version 4.0
  • Update: Supported WordPress Version to 4.4

  • Fix: Link to channel enabled in Widget not shown if related link ID has not set in Widget (ignored general settings).
  • Fix: Undefined notices

  • Enhance: Merge two improvements for MagnificPopupAU fork from core library (commit 60d5aa4 and 1d0f697)
  • Fix: TinyMCE button does not have icon when new post/page is created
  • Fix: Strip non-number characters entered in shortcode TinyMCE creator for Fetch, Show, Initial Width and Description length attributes.
  • Fix: make sure that Initial Width is always in pixels (if user enter width in percentage, strip percent sign and threat value as pixel value)

  • Fix: Broken Enhanced Privacy on small screens in forked MagnificPopupAU library
  • Enhanced: Finished making code compliant to WordPress Core coding standards

  • Enhanced: Settings page made compliant to WordPress Core Coding Standard
  • Fix: Wrong links to external resources on Settings page
  • Fix: Opening external resources links on Settings page in new tab
  • Change: Replace PayPal donation links to prevent account limitations if plugin is used on website that violates PayPal's Acceptable Use Policy (2015-06-10/16/17/18/19-07/10)

  • Fix: (6/19) Undefined notice for apikey
  • Fix: (6/18) Wrong name of widgets page on Help tab
  • Fix: (6/17) Do not load empty JS asset to prevent clash with VisualComposer and invisible rows wit enabled strtching
  • Fix: (6/16) Initiate .MagnificPopupAU() on window load event, not on DOM ready event
  • Fix: Lost some settings during igration from old to new options in settings and widgets
  • Add: (7/13) New global option Disable TinyMCE added to General tab. Enabled by default, disable to remove TinyMCE icon from post/page Visual Editor
  • Add: (7/10) New global option Enable Full Screen added to Video tab. Disabled by default, enable fullscreen option for embedded playlist
  • Add: (6/18) Support to initiate .MagnificPopupAU() on .ajaxComplete() and support dynamically loaded YTC within AJAX
  • Add: New global option Play inline on iOS added to Video tab. Disabled by default, provide support for playsinline parameter.
  • Add: Support for (playsinline)[https://developers.google.com/youtube/player_parameters#playsinline] player option in MagnificPopup library to play video on mobile devices in page instead in device player (disabled by default)
  • Add: Default option settings for nolightbox and
  • Cleanup: Removed unused modules from MagnificPopup library
  • Change: Help tab now have shortcode parameters distributed to subtabs
  • Change: Lightbox classes by prepending ytc- in front of all MagnificPopup classes
  • Change: Reduce minimal screen width from 700px to 320px when lightbox will not be used and will open video directly on YouTube website.
  • Improve: Updated strings for localization support
  • Improve: Updated FAQ with new question about play button on thumbnails
  • Updated Serbian localization (2015-06-09)

  • Add: Support for enhanced privacy videos in lightbox (MagnificPopupAU tweak) (2015-06-08)

  • Fix: Async HTML5 has broken when debug is disabled because single comments before JS code compression (2015-06-07)

  • Fix: Migrate deprecated widget options
  • Add: Notice about changed shortcode parameters
  • Add: Message if access to resource is forbidden (private Liked or Favourited videos)

3.0.8 (2015-06-07)

  • Fix: Undefined and deprecated global options
  • Add: Global option to disable builtin Lightbox (Video tab)
  • Add: Link to Support forums on Plugins page
  • Add: Visible error in YTC block for Administrator, Oops for visitors and lower members
  • Add: Filename of debug JSON
  • Add: Video title classes ytc_title_above/ytc_title_below
  • Add: Button Clear All YTC Cache on Tools tab to quick purge all cached YTC feeds
  • Improve: Do not include YT iframe_api if already included by other plugin and make YTC iframe2 to work even if other plugin uses iframe_api
  • Improve: Remove Playlist Only checkbox (only_pl=1 shortcode parameter) and integrate as new Display:Embedded Playlist option (display=playlist shortcode parameter)
  • Improve: Remove Show title below checkbox (titlebelow) and integrate to Show video title (showtitle) as dropdown
  • Improve: Remove Show link to channel checkbox (showgoto) and integrate option None to What to link (link_to)
  • Improve: Move JS code to initiate Magnific popup to inline print on wp_footer
  • Improve: LESS stylesheet for easier maintenance
  • Remove: Et cetera (descappend) option and always use ... for shortened description
  • Remove: Macro templates for Link to channel title
  • Change: Values for showtitle and link_to are changed from integer to string (check Shortcodes section)
  • Change: Move Hide annotations and Hide video info from Content to Video tab on settings page
  • Change: Play icon to be like original YT play shape
  • Change: Make responsive enabled by default in new widgets
  • Optimize: DRY of visible errors for Administrator and visitors (Oops message)
  • Optimize: Faster empty defaults for channel, vanity, legacy and playlist in global settings
  • Optimize: Minify inline JS code
  • Optimize: Remove call to fitVids() function
  • Cleanup: Remove $yt_url and $yt_video variables
  • Cleanup: Remove unused function to clean playlist ID (2015-05-29)

  • Add: TinyMCE button to easy configure and insert shortcode to post/page content
  • Add: Report about zero videos in resource
  • Add: Helper method to generate resource nice name (DRY) (2015-05-24)

  • Add: Error report if we have broken feed on record
  • Add: Report about failed HTTP connections and other problems ocurred when we try to fetch feed
  • Add: DRY of visible errors for Administrator and visitors (Oops message) (2015-05-17/18)

  • Fix: Plugin version number not updated in DB
  • Fix: Magnific Popup appear under header on Twenty Eleven theme
  • Fix: .clearfix break layout if used as class on content division

3.0.7 (2015-05-17)

  • Fix: Uncaught TypeError: e(...).fitVids is not a function
  • Change: Remove plugin default Channel ID, Vanity custom name, Legacy username and Playlist ID; leave them empty by default and allow them to be empty parameters; throw error if required value not provided. All this to prevent questions like Why I see your videos on my website or Why my website link to your channel
  • Cleanup: Deprecated widget toggler for Playlist Only depending on selected Resource
  • Cleanup: Deprecated 16:10 styles
  • Optimize: Minimize admin style for widget layout (2015-05-15)

  • Fix: Fatal error: Cannot unset string offsets in update.php on line 229 (introduced in
  • Add: Helpfull links to plugin settings page (2015-05-14)

  • Fix: Undefined index: random
  • Fix: Unremoved only_pl from global settings
  • Add: Box sizing of .youtube_channel element for crappy themes

3.0.6 (2015-05-13/14)

  • Fix: Prevent Fatal error on PHP<5.3 because required DIR for updater replaced with dirname(FILE)
  • Fix: No retrieved or missing videos from some channels so switch search to playlistItems API call (kudos to @mmirus)
  • Add: Embed As Playlist for all resources
  • Add: Clearfix for crappy themes where clearfix does not exists
  • Add: Option to move video title below video (boolean shortcode parameter titlebelow)
  • Add: PayPal donate button to settings page
  • Improved: Move YouTube Data API Key to plugin settings and add notification to remove YOUTUBE_DATA_API_KEY from wp-config.php (optional)
  • Improved: Updated shortcode explanation in README and Help tab in plugin settings.
  • Improved: Better tips for 'Oops, something went wrong' message.
  • Change: Wording Ups to Oops
  • Remove: Options Embed standard playlist and Show random video from global settings as this should be off by default
  • Remove: Loading of fitVids JS library for test before final removing.

    3.0.5 (2015-05-11/12)

  • Fix: Setting back dropdown options with 0 ID does not work on Settings page (Channel as resource to use, Cache timeout, Aspect ratio, What to show, Open link to, Link to)

  • Add: Option to export global settings to JSON and add to Tools tab in settings button to download global settings JSON
  • Change: Update plugin features
  • Improved: Retrieve only fields which will be used for output w/o unused items to reduce
  • Improved: More micro optimizations

3.0.4 (2015-05-11)

  • Add: Tip what to do if error ocurred with YouTube Data API Key printed inside YTC ERROR comment
  • Change: Where to ask for support links in widget
  • Change: Timeout for getting feed increased from 2 to 5 seconds
  • Change: Update FAQ sections in readme file
  • Remove: Check for Redux Framework in debug JSON generator

3.0.3 (2015-05-10)

  • Fix: "Oops, something went wrong." when Playlist selected as resource because wrong switch
  • Fix: Jumping thumbnails in responsive wall on hover in Twenty Fifteen theme because border-bottom for anchors
  • Fix: Another deprecated shortcode attribute backward compatibility (use_res)
  • Add: Example of dynamic responsive wall (1 large + 6 small thumbnails) (to Description)

3.0.2 (2015-05-10)

  • Fix: (typo - experiencing on frontend when no API Key set) PHP Fatal error: Call to undefined function __sprintf() in youtube-channel.php on line 445
  • Fix: shortcode deprecated params res and show not backward compatibile

3.0.1 (2015-05-10)

  • Fix: Fatal error: Using $this when not in object context in youtube-channel.php on line 89
  • Fix: Link to channel not visible on Twenty Fifteen theme

3.0.0 (2015-05-07/08/09/10)

  • Fix: Migraton of global and widget settings to v3.0.0
  • Add: New Global Settings page as replacement of Redux Framework solution
  • Add: Non-Dismissable Dashboard notice if YouTube Data API Key missing with link to explanation page
  • Change: Option key ytc_version to youtube_channel_version
  • Change: Shortcode parameters: res to resource, show to display; but leave old parameter names for backward compatibility
  • Enhance: Various plugin core micro optimizations
  • Enhance: Dashboard notices
  • Enhance: Proper options migration on plugin update
  • Remove: Redux Framework mentioning from core plugin
  • Remove: Redux Framework config.php
  • Remove: chromeless.swf asset
  • Remove: option Fix height taken by controls as now YouTube displays control bar only when video is hovered

3.0.0alpha2 (2015-03-07/22/24)

  • Add: Rewrite plugin to work with YouTube Data API v3
  • Add: Vanity link as option to Link to channel (now supports Legacy username, Channel and Vanity URL) with cleanup Vanity ID routine
  • Add: Liked videos as resource (now support channel, playlists, favourites and liked videos)
  • Add: Admin notification in widget output on front-end if no YouTube Data API Key is defined to prevent errors
  • Add: Dismissable Dashboard notice if PHP version is lower than 5.3 as YTC maybe will not work with older versions.
  • Change: Global and widget option names: use_res to resource, cache_time to cache, maxrnd to fetch, vidqty to num, getrnd to random, to_show to display, showvidesc to showdesc, enhprivacy to privacy, videsclen to desclen,
  • Change: Widget settings functionality, two column options, better toggle for playlist and GoTo section
  • Enhance: Caching routine (reduce possibility of failed feed fetch)
  • Remove: Chromeless and Flash player - leave only Thumbnail and HTML5
  • Remove: Aspect Ration 16:10 (so support only 16:9 and 4:3, same as modern YouTube)
  • Remove: "Fix No Item" option - not required for YouTube API 3.0

Requires: 4.0 or higher
Compatible up to: 4.7.1
Last Updated: 6 days ago
Active Installs: 10,000+


4.3 out of 5 stars


3 of 5 support threads in the last two months have been marked resolved.

Got something to say? Need help?


Not enough data

0 people say it works.
0 people say it's broken.

100,1,1 100,2,2 100,1,1
100,1,1 50,2,1
100,1,1 0,1,0
100,2,2 100,2,2 100,3,3
0,1,0 100,1,1 100,1,1 100,3,3
100,1,1 50,2,1
33,3,1 100,2,2
100,1,1 100,1,1 100,1,1