Developers
urkekg |
Download Stats
Today | 40 |
Yesterday | 76 |
Last Week | 430 |
All Time | 342,465 |
Add YouTube Channel widget to the widget area or shortcode to post/page content, set Channel ID or Playlist ID, chose resource to use and keep defaults for all other options. And voila! You will get the latest video from chosen YouTube channel or playlist.
IMPORTANT YouTube Channel does not support Live Streams and does not have Gutenberg Block. Use Shortcode Block or Classic Block to insert shortcode to page/post content.
If you like our plugin and find it useful, please write a review and rate it.
For a manually picked set of videos from YouTube, check out Easy YouTube Gallery.
Features
- Show latest videos from YouTube Channel (ordered in reverse chronological order related to the creation date), or from Favorited Videos, Liked Videos and Playlist
- Option to get a random video from any of 4 resources
- Responsive (one full-width video per row) or non-responsive
- Preferred aspect ratio relative to width (16:9 and 4:3)
- Custom width for video embeded object (default is 306px)
- Three modes to display video: thumbnail (
default
), HTML5 (iframe
) and HTML5 Asynchronous (iframe2
) - Thumbnail mode opens the video in lightbox
- Enhanced Privacy - please note that display mode HTML5 (IFRAME) Asynchronous (shortcode parameter
iframe2
) does not support Enhanced Privacy due to YouTube API limitations - Hide or show video title above/below video wrapped to HTML tag by your choice (h3, h4, h5, span or div)
- Custom feed caching timeout
- Optional video autoplay with optional muted audio
- (Optional) TinyMCE button on post/page edit (can be disabled on General plugin settings page), which open a shortcode GUI generator to help you build a shortcode
- Show link to channel/vanity/legacy username below videos
- Final look is highly customisable thanks to classes for each element of YTC block!
Requirements
For a fully functional plugin, PHP 5.6 or newer has required! If you use older PHP, we highly recommend you request from your developer, server support or hosting company to update PHP to a secure version.
Styling
Use Customizer, style.css
from the child theme or Head & Footer Code plugin to custom style and tweak the look and feel of the YouTube Channel blocks. You can utilise the following classes:
-
.widget_youtube-channel
class of whole widget (parent for widget title and YTC block) -
.youtube_channel
YTC block wrapper class. Additional classes are available:-
.default
for non-responsive block -
.responsive
when you have enabled responsive option
-
-
.ytc_title
class for video title container above thumbnail/video object-
.ytc_title_above
- additional class for video title above video/thumbnail -
.ytc_title_below
- additional class for video title below video/thumbnail -
.ytc_title_inside
- additional class for video title printed inside of the thumbnail -
.ytc_title_inside_bottom
- additional class for bottom aligned video title printed inside of the thumbnail
-
-
.ytc_video_container
class of container for single item, plus:-
.ytc_video_1
,.ytc_video_2
, class of container for single item with ordering number of item in widget -
.ytc_video_first
class of first container for single item -
.ytc_video_mid
class of all other containers for single item -
.ytc_video_last
class of last container for single item -
.ar16_9
class for Aspect Ratio 16:9 -
.ar4_3
class for Aspect Ration 4:3
-
-
.ytc_thumb
class of anchor for Thumbnail mode -
.fluid-width-video-wrapper
class for parent element of IFRAME for enabled responsive -
.ytc_description
class for video description text below thumbnail/video object -
.ytc_link
class of container for link to channel
Known Issues
- Video title and description for embedded playlist mode do not work.
- Removing the YouTube logo from the playback control bar does not work for all videos.
- Async HTML5 video does not work for 2nd same video on the same page (two YTC blocks set to Async HTML5)
If WordFence or other malware scan tool detect YouTube Channel file youtube-channel.php
as a potential risk because base64_encode()
and base64_decode()
functions, remember that we use this two functions to store and restore JSON feeds to transient cache, so potential detection is false positive.
Credits
- For playing videos in lightbox we use enhanced Magnific Popup.
- Initial textdomain adds done by dimadin.
- Federico Bozo reminded me to fix z-index problem
Shortcode
Along with Widget, you can add YouTube Channel block inline by using shortcode [youtube_channel]
. Default plugin parameters will be used for shortcode, but you can customize all parameters per shortcode.
General Settings
-
class
(string) Set custom class if you wish to target special styling for specific YTC block -
channel
(string) ID of preferred YouTube channel. Do not set full URL to channel, but just last part from URL - ID (name) -
vanity
(string) part after www.youtube.com/c/ from Custom URL -
username
(string) Optional legacy YouTube username. -
playlist
(string) ID of preferred YouTube playlist. -
resource
(int) Resource to use for feed:-
0
Channel (User uploads) -
1
Favorites (for defined channel) -
2
Playlist -
3
Liked Videos
-
-
cache
(int) Period in seconds for caching feed. You can disable caching by setting this option to 0, but if you have a lot of visits, consider at least short caching (couple minutes). -
fetch
(int) Number of videos that will be used as stack for random pick (min 2, max 50) -
num
(int) Number of videos to display per YTC block. -
random
(bool) Option to randomize videos on every page load.
Video Settings
-
ratio
(int) Set preferred aspect ratio for thumbnail and video. You can use:-
3
16:9 (widescreen) -
1
4:3
-
-
responsive
(bool) Distribute one full width video per row. -
width
(int) Width of thumbnail and video in pixels. -
display
(string) Object that will be used to represent video. We have couple predefined options:-
thumbnail
Thumbnail will be used and video will be loaded in lightbox. (default) -
iframe
HTML5 (iframe) -
iframe2
HTML5 (iframe) with asynchronous loading - recommended -
playlist
Embedded playlist (same behaviour as old functiononly_pl
)
-
-
thumb_quality
(string) Define image quality for thumbnail display mode. Default ishqdefault
, available:-
default
Default Quality (120x90px) -
mqdefault
Medium Quality (320x180px) -
hqdefault
High Quality (480x360px) -
sddefault
Standard Definition (640x480px) -
maxresdefault
Maximum Resolution (1280x720px)
-
-
no_thumb_title
(bool) By default YouTube thumbnail will have tooltip with info about video title and date of publishing. By setting this option to 1 or true you can hide tooltip -
themelight
(bool) By default YouTube have dark play controls theme. By setting this option to 1 or true you can get light theme in player (HTML5 and Flash) -
controls
(bool) Set this option to 1 or true to hide playback controls. -
autoplay
(bool) Enable autoplay of first video in YTC video stack by setting this option to 1 or true -
mute
(bool) Set this option to 1 or true to mute videos set to autoplay on load -
norel
(bool) Set this option to 1 or true to hide related videos after finished playbak -
nobrand
(bool) Set this option to 1 or true to hide YouTube logo from playback control bar -
NEW
nolightbox
(bool) Set this option to 1 or true to prevent YTC block with thumbnail to open in lightbox. If you have other plugin that trigger youtube links for lightbox, that one will steal links from this YTC block. -
NEW
target
(string) If you enable nolightbox for specific YTC block, you can force opening of thumbnail links in new tab/window if you set this shortcode option to_blank
liketarget="_blank"
.
Content Layout
-
showtitle
(string):-
none
- Hide title -
above
- Display title above video/thumbnail -
below
- Display title below video/thumbnail -
inside
- Display top aligned title inside thumbnail; ifdisplay
is notthumbnail
then treat asabove
-
inside_b
- Display bottom aligned title inside thumbnail; ifdisplay
is notthumbnail
then treat asbelow
-
-
titletag
- Video title HTML tag to wrap title (H3, H4, H5, div, span, strong, etc) -
showdesc
(bool) Set to 1 or true to show video description. -
desclen
(int) Set number of characters to cut down length of video description. Set to 0 to use full length description. -
noinfo
(bool) Set to 1 or true to hide overlay video infos (from embedded player) -
noanno
(bool) Set to 1 or true to hide overlay video annotations (from embedded player)
Link to Channel
-
goto_txt
(string) -
popup
(int) Control where link to channel will be opened:-
0
open link in same window -
1
open link in new window with JavaScript -
2
open link in new window with target="_blank" anchor attribute
-
-
link_to
(string) URL to link:-
none
Hide link (defult) -
vanity
Vanity custom URL -
channel
Channel page -
legacy
Legacy username page
-
Please note, to enhance plugin functionality, we can change some shortcode parameters in future.
Releases (74 )
Version | Release Date | Change Log |
---|---|---|
3.0.12.1 | 2021-02-27 | (20210227) = * Tested: WordPress 5.6.2 on PHP 7.4.15 and 8.0.2 * Add: compatibility with PHP 8 * Add: conditionally hide not applicable options in widget settings form * Change: Lowest supported PHP version increased to 5.6 * Improve: Readme, Installation (Step-by-Step instructions for obtaining YouTube Data API Key v3), FAQ |
3.0.12 | 2020-11-07 | (20201107) =
* Add: link video title to YouTube playback page opened in new tab/window
* Cleanup: remove deprecated parameters |
3.0.11.8 | 2019-07-19 | (20190719) = * Fix: referrer is wrong for protected API keys (thanks to @hmmux) |
3.0.11.7 | 2018-09-06 | (20180906) =
* Add: Global option |
3.0.11.6 | 2018-08-27 | (20180826) = * Add compatibility with async/defer optimization (thanks to @lordbass) |
3.0.11.5 | 2018-07-21 | (20180721) =
* Add: Missing |
3.0.11.4 | 2018-06-22 | (20180622) =
* Improvement: add |
3.0.11.3 | 2018-02-27 | (20171001) = * Fix: Default values in dropdown lists does not preselect in TinyMCE shortcode selector * Add: new option for thumbnail quality for TinyMCE shortcode selector |
3.0.11.2 | 2017-10-01 | (20171001) =
* (20171001) Fix: Undefined index: option_page in youtube-channel/inc/settings.php on line 1006
* Add: Support for custom thumbnail quality
* (20170716) Add: native error message from Google for cases not covered by common errors (like |
3.0.11.1 | 2017-05-29 | (20170530) =
* Fix: cut description in the middle of multy-byte characters (reported by @funfrog)
* (20170509) Fix: undefined variable |
3.0.11 | 2017-04-24 | (20170424) =
* Fix: added all 3 parameters to |
3.0.10.5 | 2017-02-24 | (20170225) = * Remove: FMVD opt-in because of general plugin guideline violation rule #9 |
3.0.10.4 | 2017-02-01 | (20170123) = * Fix: once enabled FMVD notice has not auto dismissed. * Change: input type for YouTube Data API Key from password to text so key is visible by webmaster and prevent messing with autofill browser extensions |
3.0.10.3 | 2017-01-17 | (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 |
3.0.10.1 | 2017-01-10 | (20170110) = * Fix Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM, expecting ')' in /plugins/youtube-channel/inc/settings.php on line 218 |
3.0.10 | 2016-12-31 | (20161231) =
* (20161225) Optimize: Remove |
3.0.9 | 2016-02-24 |
|
3.0.8.9 | 2015-10-27 |
|
3.0.8.8 | 2015-10-15 |
|
3.0.8.7 | 2015-10-15 |
|
3.0.8.6 | 2015-10-04 |
|
3.0.8.5 | 2015-09-01 |
|
3.0.8.4 | 2015-08-27 | (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 |
3.0.8.3 | 2015-07-17 | (2015-06-09) = * Add: Support for enhanced privacy videos in lightbox (MagnificPopupAU tweak) |
3.0.8.2 | 2015-06-08 | (2015-06-08) = * Fix: Async HTML5 has broken when debug is disabled because single comments before JS code compression |
3.0.8.1 | 2015-06-08 | (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 | Bugfixes, optimizations and improvements. |
3.0.7.3 | 2015-06-02 | (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) |
3.0.7.2 | 2015-05-24 | (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) |
3.0.7.1 | 2015-05-18 | (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 | (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 |
3.0.6.2 | 2015-05-15 | (2015-05-15) = * Fix: Fatal error: Cannot unset string offsets in update.php on line 229 (introduced in 3.0.6.1) * Add: Helpfull links to plugin settings page |
3.0.6.1 | 2015-05-14 | (2015-05-14) = * Fix: Undefined index: random * Fix: Unremoved only_pl from global settings |
3.0.6 | 2015-05-14 | (2015-05-13/14) =
|
3.0.5 | 2015-05-12 | (2015-05-11/12) =
* Fix: Setting back dropdown options with |
3.0.4 | 2015-05-11 | (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 | (2015-05-10) =
* Fix: "Ups, 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 ( |
3.0.2 | 2015-05-10 | (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 |
3.0.1 | 2015-05-10 | (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-10 | (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 |
2.4.2.1 | 2015-04-24 | (2015-04-24) = * Fix: devicesupport workaround strip 1st video from playlist and favourites and apply only for channel |
2.4.2 | 2015-04-22 | (2015-04-22) = * Fix: Broken layout introduced by missing responsive for embedded playlist, iframe and iframe2 * Fix: Replace amp's with HTML entity in thumbnail link * Add: Option to disable thumbnail tooltips (shortcode parameter no_thumb_title) * Add: List of Shortcode attributes to README file * Add: Danis localisation by GSAdev v. Georg Adamsen * Micro optimizations |
2.4.1.7 | 2015-04-20 | (2015-04-20) = * Quick Fix: strip 1st video from feed that provides notice "YouTube is upgrading to a newer version, which is not supported by this device or app." (more on www.youtube.com/devicesupport) until we finish YouTube Channel 3.0.0 (on the way) |
2.4.1.6 | 2015-04-20 | (2015-04-15) = * Fix: missing responsive support for embedded playlist, iframe and iframe2 * Fix: missing support to hide playback controls, info and annotations for embedded playlist |
2.4.1.5 | 2015-04-13 | (2015-04-13) = * Change: Add dismiss link for Old PHP notice and lower suggested PHP version to 5.3.x |
2.4.1.4 | 2015-04-09 | (2015-04-09) = * (2015-04-09) Add: Notification about old PHP if lower than 5.3.29 * Change: Run admin functions only in dashboard * (2015-02-09) Fix: strip whitespace from the beginngine/end of channel and playlist ID * (2014-12-30) Fix: prevent Undefined Offset notice when on resource we get less items than user requested in shortcode/widget |
2.4.1.3 | 2014-12-10 | (2014-12-10) = * Fix: previous release broke opening lightbox for thumbnails and load YouTube website. |
2.4.1.2 | 2014-12-07 | (2014-12-07) = * Add: Add support for hidden controls and YouTube logo in Thumbnail mode. * Change: Rename Magnific Popup function to prevent clash with original Modest Branding that does not have support for disabling related videos, player controls and YouTube logo. |
2.4.1.1 | 2014-12-07 | (2014-12-07) =
* Change: Remove parameter |
2.4.1 | 2014-11-15 | (2014-11-15) =
* Fix: Typo in widget |
2.4.0.2 | 2014-10-02 | (2014-10-02) =
* Fix: light theme not applicable to embedded playlist [2014-10-01]
* Fix: add clearfix after YTC widget to prevent jumping out of widget block on bad styled themes [2014-10-02]
* Add: explanation that |
2.4.0.1 | 2014-10-01 | (2014-10-01) = * Fix: fatal error - broken execution for embedded playlist with enhanced privacy * Add: button to discard warning notice for Redux Framework |
2.4.0 | 2014-10-01 | (2014-10-01) = * Fix: false options set in shortcode had no effect to output box and default settings always used [20140924] * Fix: enabled checkbox in global settings could not be unticked (disabled) [20140924] * Fix: prevent array_slice notice if channel have no uploaded videos [20141001] * Add: fitVids for responsive videos [20140924] * Add: option for additional YTC box class in widget and shortcode [20140924] * Change: global settings page re-implemented with Redux Framework and requires Redux Framework Plugin [20140924] * Change: rewrite plugin to be more OOP [20140924] * Change: removed obsolete methods [20140924] * Change: default box width changed from 220 to 306px [20140924] * Change: YTC block and video pieces now floated left to enable horizontal stack [20140924] * Change: update localization support [20140926] * Change: updated Serbian localization [20140926] * Change: removed PayPal donation button from widget and moved to plugin Settings page [20141001] |
2.2.3 | 2014-09-14 | (2014-09-14) =
* Add: option to disable related videos (not supported by chromeless player)
* Enhance: added support for YouTube |
2.2.2 | 2014-07-26 | (2014-07-25) = * Add: admin notices after upgrade to prevent errors and avare users to do ReCache and prevent mixed json_decode / base64_encode strings for cached feeds * Change: moved ReCache part to Tools tab on settings page |
2.2.1 | 2014-07-23 |
|
2.2.0 | 2014-04-20 |
|
2.1.0.2 | 2014-03-28 |
|
2.1.0.1 | 2014-03-28 |
|
2.1.0 | 2014-03-26 |
|
2.0.0 | 2014-02-16 |
|
1.5.1 | 2013-04-11 |
|
1.5.0 | 2013-03-28 |
|
1.4.0 | 2012-09-12 |
|
1.3.2 | 2012-02-29 |
|
1.3.1 | 2012-01-20 |
|
1.3 | 2012-01-18 |
|
1.2 | 2011-09-28 |
|
1.1 | 2011-09-24 |
|
1.0 | 2011-09-23 |
|
0.1.3 | 2011-04-09 |
|
0.1.2 | 2011-04-02 |
|
0.1.1 | 2011-03-30 |
|
0.1.0 | 2011-03-29 |
= |