Poppable – The Easy Way to Add a Video Modal
Poppable – The Easy Way to Add a Video Modal
Description
Poppable is a lightweight Gutenberg block that lets you display YouTube videos in a sleek modal popup. Simply add the block, paste your YouTube URL, and connect it to any trigger element on your page.
Key Features:
- Trigger from Any Element – Assign a trigger ID to any element (button, image, text) and clicking it opens the video modal
- Multiple YouTube URL Formats – Supports youtube.com/watch?v=, youtu.be/, and youtube.com/embed/ formats
- Autoplay Support – Optionally start playing the video automatically when the modal opens
- Customizable Modal Width – Set the content width using px, %, vw, or any CSS unit
- Multiple Close Options:
- Close button (X) in the corner
- Click outside to close
- Press ESC key to close
- Responsive Design – Videos maintain 16:9 aspect ratio on all screen sizes
- Body Scroll Lock – Page scrolling is disabled when the modal is open for a focused viewing experience
- Lightweight – No jQuery dependencies, built with vanilla JavaScript
Development & Source Code:
Poppable is open-source and developed publicly on GitHub.
GitHub repository: https://github.com/Engramium/poppable
How to Use
- Add the Poppable block anywhere on your page (it will be hidden on the frontend).
- In the block settings panel, enter your YouTube Video URL.
- Set a unique Trigger ID (e.g.,
poppable-video-modal). - Add the same trigger ID as a CSS class to any element you want to use as the trigger (e.g., a button with class
poppable-video-modal). - Configure your preferred close options and modal width.
- Save and preview your page!
Installation
- Upload the plugin files to the
/wp-content/plugins/poppabledirectory, or install the plugin through the WordPress plugins screen directly. - Activate the plugin through the ‘Plugins’ screen in WordPress.
- In the block editor, search for “Poppable” and add the block to your page.
Faq
Add the trigger ID you set in the block settings as a CSS class to any element. For example, if your trigger ID is my-video-trigger, add the class my-video-trigger to a button or image.
Yes! Add multiple Poppable blocks with different trigger IDs, then assign each trigger ID to different elements on your page.
Poppable supports all common YouTube URL formats:
* https://www.youtube.com/watch?v=VIDEO_ID
* https://youtu.be/VIDEO_ID
* https://www.youtube.com/embed/VIDEO_ID
Yes, the video automatically stops and resets when the modal is closed.
Reviews
Changelog
1.0.0
- Converted to YouTube Video Popup Block
0.1
- Initial public release