All-in-One Video Gallery – Video Player & Galleries for YouTube, Vimeo & Self-Hosted Videos
★★★★★ Trusted by 20,000+ WordPress sites View Demo | Getting Started | Contact & Support | Home Page All-in-One Video Gallery is a video posts plugin that lets you add videos as posts and build scalable, searchable, SEO-optimized video galleries in minutes — no coding required. Whether you need a single embedded video player or a full video-sharing website like YouTube or Vimeo, this plugin covers it. Suitable for course creators, video bloggers, podcasters, businesses, and anyone embedding video on WordPress. PLAYER FEATURES A Custom HTML5 Video Player that supports MP4, WebM, OGV, HLS, MPEG-DASH, and embeddable players like YouTube, Vimeo, Dailymotion, Rumble, Facebook, Bunny Stream and more. Player Controls: play/pause buttons, timer, progress bar, duration, speed control, quality switcher, volume button, picture-in-picture button, fullscreen button, share buttons, embed button, download button, subtitles on/off, keyboard hotkeys Playback Options: autoplay, loop, muted, preload, playsinline Subtitles & Captions (WebVTT). Chapter Markers. GDPR compatibility. [+] support embed code from any third-party video sharing websites. GALLERY FEATURES Back-End A user-friendly interface to upload and manage your videos. Create unlimited categories/subcategories and tags. Ability to group videos by categories and tags. Create a featured videos group. Bulk import videos from a CSV file or folder; export all your videos in one click. Restrict video access globally or per video — allow all visitors, logged-in users only, logged-out users only, or specific user roles. 100+ settings (STILL COUNTING) that help you customize the plugin to the maximum you will need. Front-End Modern, Responsive design. Categories display options: Grid, List Sort categories by “ID”, “videos count”, “category name”, “slug” & “menu order (custom ordering)”. Videos display options: Grid. More template options are available with our premium version. Filter videos by “categories”, “tags” and “featured” meta key. Sort videos by “video posted date”, “title”, “views count”, “likes count”, “dislikes count”, “random” & “menu order (custom ordering)”. Ability to control the display of each HTML element in the gallery. Filter videos on the same page using AJAX — search by keyword, category, or tag and sort by title, date, or popularity without a page reload. Numeric Pagination for the large galleries. Likes / Dislikes. Social Sharing (Facebook, X (Twitter), LinkedIn, Pinterest, Tumblr & WhatsApp). Comments System. Dedicated search form & layout. Shortcode Builder to build the gallery shortcodes. Gutenberg Blocks to build the gallery if your website uses the modern WordPress editor. Widgets to list categories, list videos, display a single video player, and search videos. DEVELOPER OPTIONS The videos (aiovg_videos) belong to a WordPress Custom Post Type. Similarly, the categories (aiovg_categories) and tags (aiovg_tags) belong to the WordPress Custom Taxonomy. The plugin doesn’t use any custom tables and the settings are stored in the WP_Options table using the WordPress SETTINGS API. In short, the plugin has been developed completely using the WordPress CORE features. So, if you’re a WordPress developer, you can customize/extend the plugin as you like using the WordPress hooks system easily. Similarly, the front-end gallery layouts added by our plugin can be customized by developing or overriding our existing templates. Please check for a detailed documentation on this. [+] PREMIUM FEATURES Gallery Templates: Popup, Inline, Slider, Playlist, Compact (Modern) Auto import videos from YouTube & Vimeo websites. Video SEO: Schema.org Markup (via JSON-LD) Auto Thumbnail Generator Custom Logo & Branding Custom Context Menu Front-end User Submission User Playlists / Favorites VAST / VPAID Ads TRANSLATION READY Do you speak another language? Want to contribute in a meaningful way to All-in-One Video Gallery? There’s no better way than to help us translate the plugin. This plugin is translation ready and you can translate to your language easily. Once finished, please reach out to us here to get your language file included in the core. Spanish translation partner – Blarlo LATEST ADDITION Trailers & Teasers! Display a trailer clip to non-access users instead of the locked screen — great for driving upgrades or sign-ups. Email & Lead Capture! Show an email collection form over your video to capture leads before, during, or after playback. SUPPORT AND DOCUMENTATION We do have documentation on the plugin. Still, Having Issues? We are just an email away. Please write to us describing your issue using the “Contact” form available under our plugin’s menu. You should receive a reply within 24 hours (except Sunday). Also, we answer all support requests on the WordPress.org support forum.
Top keywords
- videos16×2.24%
- video15×2.10%
- wordpress10×1.40%
- categories8×1.12%
- custom8×1.12%
- gallery8×1.12%
- options6×0.84%
- button5×0.70%
- display5×0.70%
- player5×0.70%
- support5×0.70%
- tags5×0.70%
WP YouTube Live
Displays the current YouTube live video from a specified channel via the shortcode [youtube_live]. Setup Notes Your YouTube livestream must be set to “Public” or it will not work. This is a security feature of YouTube’s API and unfortunately there’s no way to work around it. In addition, your live stream must be set to allow embedding on third-party sites. If that feature is unavailable, you may need to enable monetization for your account. See YouTube documentation for more information or help with allowing embedding. How It Works If no live video is available, you can display a specified video or a “channel player” showing all your recent videos. You can also enable auto-refresh to automatically check for a live video every 30 seconds (warning: will increase server load, so use with caution). By default, the server will check YouTube’s API and then cache that response for 15 minutes before checking the API again (you may change this value in the admin settings). If auto-refresh is enabled, clients will check against your server every 30 seconds and likely will hit that cache as well, so it can potentially take up to 16 minutes before a client will get a live video. The length of both caches can be changed using the wp_youtube_live_transient_timeout filter (see below for more information). If no live video is available when a page is loaded, several fallback options are available: “Show a custom HTML message” allows you to specify a custom message to show “Show scheduled live videos” will show a player and countdown until your next live video “Show last completed live video” will show your most recently-completed live video “Show recent videos from my channel” will show a playlist of recent videos from your channel “Show a specified playlist” will show a specified playlist “Show a specified video” will show a specified video “Show nothing at all” will show nothing at all When a video ends, users’ browsers will check your server again to see if a live video is available. If so, it will load that; if not, it will fall back as set in your options. Shortcode Options width: player width in pixels; defaults to what you set on the settings page height: player height in pixels; defaults to what you set on the settings page autoplay: whether or not to start playing immediately on load; defaults to false auto_refresh: (either true or false) overrides the auto-refresh setting on the settings page fallback_behavior: choose from the following: upcoming, completed, channel, playlist, video, message, no_message upcoming: the next upcoming scheduled video on the specified channel playlist: a specified playlist (shortcode must also include the fallback_playlist attribute) video: a specified video (shortcode must also include the fallback_video attribute) message: a specified message no_message: nothing at all fallback_playlist: a playlist URL to show when there are no live videos fallback_video: a video URL to show when there are no live videos fallback_message: a message to show when there are no live videos js_only: (either true or false) workaround for some caching issues; if a caching plugin (W3 Total Cache, WP Super Cache, etc.) or proxy (CloudFlare, etc.) caches the HTML while a video is live, visitors may continue to see an old live video even if it has ended. If set js_only is set to true, the server never displays the player code in the initial request and instead sends it in response to uncached ajax requests. This may also result in the video player being slightly delayed on page load due to the extra request, depending on the clients’ bandwidth and latency. Example shortcode: [youtube_live width="720" height="360" autoplay="true"] Filters The filter wp_youtube_live_no_stream_available will customize the message viewers see if there is no live stream currently playing, and takes effect after the fallback_message shortcode attribute is parsed (if fallback_message="no_message" is set in a shortcode, it will override the filter). For example, add this to your theme’s functions.php file: add_filter( 'wp_youtube_live_no_stream_available', 'my_ytl_custom_message' ); function my_ytl_custom_message( $message ) { $message = ' Please check back later or subscribe to our YouTube channel . Check again '; return $message; } The filter wp_youtube_live_transient_timeout is available to customize the cache timeout length in seconds. For example, add this to your theme’s functions.php file to set the cache length to 15 seconds instead of the default 900: add_filter( 'wp_youtube_live_transient_timeout', 'my_ytl_custom_timeout' ); function my_ytl_custom_timeout( $timeout ) { return 15; } Event Listener When a live stream is loaded, the wpYouTubeLiveStarted event is fired; you can use this to create custom front-end features on your site by adding an event listener: window.addEventListener('wpYouTubeLiveStarted', function() { /* your code here */ console.log('stream started'); /* your code here */ }); Development of this plugin is done on GitHub. Pull requests are always welcome.