Plugin Directory

YouTube Channel

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


  • 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.4.4
Last Updated: 6 months ago
Active Installs: 10,000+


4.3 out of 5 stars


1 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