About this plugin
BarkingLlama Roulette adds a simple shortcode and REST endpoint that selects a random YouTube video from a configured playlist and embeds it on your site.
Perfect for motivational cards as Shorts, “daily randomness” pages, or any curated playlist you want to keep fresh.
Features:
* Shortcode: [llama_roulette]
* REST endpoint: /wp-json/llama-roulette/v1/random
* Playlist caching via transients to reduce YouTube API calls
* Optional Privacy Enhanced Mode (youtube-nocookie embeds)
* “Start Muted” setting for reliable autoplay
External services
This plugin uses the YouTube Data API v3 (Google) to retrieve videos from the configured YouTube playlist so it can select and display a random video.
What data is sent and when:
* The configured playlist ID (or playlist ID parsed from a provided playlist URL) is sent when the plugin requests playlist items.
* The configured YouTube API key is sent with those API requests for authentication.
* These requests occur when cached playlist data is missing or expired, or when playlist data must be refreshed.
Service provider:
* Google / YouTube Data API v3
Terms of Service and Privacy Policy:
com/terms/
com/youtube/terms/api-services-terms-of-service
com/privacy
Shortcode
Basic:
[llama_roulette]
Available attributes:
, button_label="Try Luck" ).
* playlist – Optional YouTube Playlist ID or URL to override the global setting.
* autoplay – Set to 1 to auto-load/play, 0 to wait for click.
* muted – Set to 1 to start muted, 0 for sound (Note: browsers block unmuted autoplay).
* show_title – Set to 1 to show the video title below the player, 0 to hide.
* align – left, center, or right.
, max_width="800px" ).
, 16/9, 4/3 ).
* class – Append custom CSS classes.
Example:
” autoplay=”1″ muted=”1″ show_title=”1″]
REST API
GET /wp-json/llama-roulette/v1/random
Optional query param:
* playlist (Playlist ID or URL) to override the configured playlist for that request
Example:
playlist=PLabc123
License
This plugin is licensed under the GPLv2 or later.