Description
Demo videos
Demo pages
https://etchenet.com/demo-scroll-video-agence-immobiliere-pays-basque/
https://etchenet.com/demo-sidra-scroll/
Etchenet Scroll Video Background Builder adds decorative background videos that follow page scroll progress. It is designed for ww.wp.xz.cn as a lightweight native JavaScript plugin without GSAP, jQuery, remote APIs, tracking, or required CDN assets.
The plugin provides three complementary ways to use scroll-scrubbed video backgrounds:
- Gutenberg sections: insert the Etchenet Scroll Video Background Section block in any Gutenberg page or post, then add normal blocks inside it.
- Pages: enable a fixed page background from the Page settings sidebar in the editor.
- Posts: enable a fixed post background from the Post settings sidebar in the editor.
- Templates: insert the Etchenet Scroll Video Template Layer block in a block theme template such as Home, Index, Archive, or Search.
- Template parts: insert the Template Layer block in a template part when you intentionally want that template part to own the decorative fixed background layer.
- Elementor compatibility: optionally enable Elementor support, then use document settings or section/container controls.
The frontend script pauses the decorative video and maps scroll progress to video.currentTime with requestAnimationFrame. Videos are muted, inline, decorative, and hidden from assistive technology. Reduced-motion preferences and mobile browser video limitations are handled with fallback states.
Compatibility notice:
- This release is compatible with WordPress 7.0.
- WordPress 7.0 compatibility testing is part of the current validation process.
Main features:
- Native JavaScript scroll scrubbing.
- Gutenberg section/container block with InnerBlocks.
- Media Library controls for video, mobile video, poster image, and mobile fallback image.
- Manual URL fallback fields for videos not stored in the Media Library.
- Separate page/post background settings stored as post meta.
- Dedicated template layer block for Full Site Editing templates and template parts.
- Elementor document controls for page and template backgrounds.
- Elementor section/container controls for independent video background areas.
- Responsive playback scroll ranges for desktop, tablet, and mobile layouts.
- Encapsulated CSS using the
svbs-prefix. - Conditional asset loading for block and page/post background output.
Use the block named “Etchenet Scroll Video Background Section”, the Page/Post Background panel, the Template Layer block, or the Elementor integration controls.
Usage
Elementor compatibility
Elementor is optional, not required. Etchenet Scroll Video Background Builder must continue working without Elementor installed. Do not declare Elementor as a required dependency unless your site truly depends on Elementor-specific layouts.
The plugin can be used inside Elementor pages. If Elementor is active, verify that the scroll video background output works correctly inside the target Elementor section or container.
Elementor Pages and Templates
Use the Elementor document settings when the whole Elementor page or Elementor template should have a fixed decorative video background.
- Go to Etchenet Scroll Video Background Builder in WordPress admin.
- Enable the Elementor integration and save settings.
- Edit the page or template with Elementor.
- Open the page/template settings.
- Find the “Etchenet Scroll Video Background” section.
- Enable the background and select a video from the Media Library or enter a manual video URL.
- Adjust overlay opacity, scroll range, start time, end time, mobile behavior, and z-index.
- Save the page or template.
Elementor Sections and Containers
Use Elementor section or container controls when the video should be limited to a specific layout area.
- Go to Etchenet Scroll Video Background Builder in WordPress admin.
- Enable the Elementor integration and save settings.
- Edit a page or template with Elementor.
- Select the target section or container.
- Open Style > Background.
- Enable the Etchenet Scroll Video controls.
- Select the video, optional mobile video, optional poster, optional mobile fallback image, overlay, and scrub settings.
- Save the page or template.
Sections
Use the Gutenberg Section block when the video should be the background of a specific content area.
- Edit a page or post in Gutenberg.
- Insert the “Etchenet Scroll Video Background Section” block.
- Select a video from the Media Library or paste a manual video URL.
- Add Heading, Paragraph, Buttons, Columns, Group, Image, or other Gutenberg blocks inside the section.
- Use the block alignment control for Wide or Full width layouts.
- Adjust content max width, minimum height, overlay opacity, margins, padding, and scrub settings.
- Save the page or post.
Pages
Use the Page Background panel when the entire individual page should have a fixed decorative video background.
- Edit a page in Gutenberg.
- Open the Page settings sidebar.
- Find the “Etchenet Scroll Video Page Background” panel.
- Enable the background for that page.
- Select a video or enter a manual URL.
- Adjust overlay opacity, scroll range, start time, end time, mobile behavior, and z-index.
- Save the page.
Posts
Posts use the same document sidebar panel as pages.
- Edit a post in Gutenberg.
- Open the Post settings sidebar.
- Enable the Etchenet Scroll Video Page Background panel.
- Select or enter a video URL.
- Save the post.
Templates
Use the Template Layer block for block theme templates such as Home, Index, Archive, Search, Single, or Page templates.
- Open Appearance > Editor.
- Open the target template.
- Insert the “Etchenet Scroll Video Template Layer” block near the top of the template structure.
- Select a video or enter a manual URL.
- Adjust overlay opacity, scroll range, start time, end time, and z-index.
- Save the template.
The Template Layer block has no inner content. It renders a fixed decorative video layer behind the template content. If the block is removed from the template, the template background is removed too.
A template can provide a default video background, but an individual page or post can replace it with its own SVBB Page Background. The effective priority is page settings first, then template settings, then plugin defaults. If a page background is active, the template background is ignored so two fixed SVBB backgrounds are never rendered at the same time.
Template Parts
Template parts are reusable pieces of a block theme, such as headers, footers, or custom areas. The Template Layer block can be inserted in a template part when you intentionally want that template part to provide the background layer for every template that uses it.
Use this carefully: placing the Template Layer block in a shared template part can affect multiple templates. For most sites, inserting the block directly in the specific template is easier to understand and maintain.
Settings
Section block settings
- Video: main desktop video selected from the Media Library.
- Mobile video: optional separate video for smaller screens.
- Poster image: image shown before metadata loads.
- Mobile fallback image: image used when mobile video seeking is limited.
- Manual video URL: fallback for externally hosted or manually entered MP4 files.
- Content max width: constrains the inner Gutenberg content while the outer section can remain full width.
- Vertical alignment: top, center, or bottom alignment for the inner content.
- Horizontal alignment: left, center, or right alignment for the inner content.
- Minimum height: section height such as
100vh,70vh, or640px. - Overlay color and opacity: improves text readability over video.
- Margin and padding: controls spacing without applying global CSS.
- Scrub start and end: controls the video time range used by scroll progress.
- Smoothing: controls how quickly video time follows scroll changes.
Page and post background settings
- Enable scroll video background for this page: turns the fixed background on for the current page or post only.
- Select video from Media Library: stores the media ID and URL.
- Manual video URL fallback: keeps the background working even without a media ID.
- Overlay opacity: controls the dark overlay above the video.
- Responsive playback scroll ranges: desktop, tablet, and mobile scroll distances used to map page scroll to video time.
- Start time: first video timestamp used for scrubbing.
- End time: final video timestamp; use
0to use the detected video duration. - Mobile behavior: enabled, disabled, or poster fallback.
- Z-index helper: adjusts the background stacking layer if a theme requires it.
- Debug information: shows the resolved video URL used by the frontend.
Template layer settings
- Select video: chooses the fixed template background video.
- Manual video URL: fallback URL for videos outside the Media Library.
- Poster image: optional poster before metadata loads.
- Overlay color and opacity: controls contrast.
- Responsive playback scroll ranges: desktop, tablet, and mobile values map scroll distance to video progress.
- Overlay color and opacity: controls the optional color layer above the video.
- Start time and end time: controls the video range used for scrubbing.
- Z-index: adjusts the fixed background layer without targeting theme headers, footers, or global layout containers.
Admin settings
The top-level admin page provides plugin settings, default scrub settings, mobile behavior notes, video optimization guidance, troubleshooting, and donation/support information. Elementor integration is disabled by default and must be enabled there before Elementor controls are registered.
Elementor settings
- Enable Elementor integration: disabled by default in the plugin admin settings.
- Page/template background: stored in Elementor document settings for that page or template.
- Section/container background: stored in Elementor element settings for the selected section or container.
- Video and manual video URL: the manual URL is used when provided; otherwise the Media Library video URL is used.
- Start time and end time: controls the video range used for scrubbing.
- Scroll range: available for fixed page/template backgrounds.
- Responsive scroll ranges: desktop, tablet, and mobile values can be configured independently.
- Smoothing: available for page/template and independent section/container backgrounds.
- Mobile video, poster, and mobile fallback image: available for section/container backgrounds.
Source Code and Build Process
The human-readable source code used to generate the compiled assets in /build is included in this plugin package.
Source files are in the /src directory:
src/index.js,src/edit.js, andsrc/save.jsgeneratebuild/index.js.src/view.jsgeneratesbuild/view.js.src/page-settings.jsgeneratesbuild/page-settings.js.src/page-background.jsgeneratesbuild/page-background.js.src/template-layer/index.jsandsrc/template-layer/view.jsgenerate the JavaScript files inbuild/template-layer/.src/*.scssandsrc/template-layer/*.scssgenerate the compiled CSS files in/build.- Elementor integration is implemented in
includes/class-elementor-integration.phpand reuses the compiled frontend assets.
The build process uses the standard WordPress Scripts tooling documented in package.json and webpack.config.js.
To regenerate the compiled files:
npm install
npm run build
No third-party runtime library is loaded from a CDN. The plugin does not bundle GSAP, jQuery, tracking scripts, or remote API integrations.
Video Guidelines
For reliable scroll scrubbing, use short MP4 videos encoded with H.264. Keep dimensions and file size reasonable, use faststart metadata, and consider separate desktop and mobile versions.
Recommended duration is usually 5 to 15 seconds. Recommended frame rates are 24, 30, or 60 fps depending on the smoothness needed. Avoid heavy 4K files for mobile, and use a poster image plus a mobile fallback image.
Recommended baseline command:
ffmpeg -i input.mov -movflags faststart -vcodec libx264 -crf 23 -pix_fmt yuv420p output.mp4
For more precise scrubbing with frequent keyframes:
ffmpeg -i input.mov -movflags faststart -vcodec libx264 -crf 23 -g 1 -pix_fmt yuv420p output-keyframes.mp4
Large videos, long videos, missing metadata, distant hosting, or sparse keyframes can make scrubbing feel delayed or uneven.
Privacy
This plugin does not collect personal data, set tracking cookies, or send visitor data to external services.
Videos and images are loaded from the URLs configured by site administrators or editors. If you use third-party media URLs, those third-party services may receive standard browser requests from visitors.
License
Etchenet Scroll Video Background Builder is licensed under GPLv2 or later.
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Support
Plugin website: https://etchenet.com/etchenet-scroll-video-background-builder/
Author website: https://etchenet.com/
Contact: [email protected]
Screenshots

Frontend demo page with a scroll-scrubbed video background and readable foreground content. 
Plugin settings screen with output, Elementor, loading, and default scrub controls. 
Gutenberg editor showing the Scroll Video Background block and page background settings. 
Site Editor view showing the Template Layer block inside a block theme template.
Blocks
This plugin provides 2 blocks.
- Etchenet Scroll Video Template Layer A fixed scroll-scrubbed video background layer for block theme templates.
- Etchenet Scroll Video Background Section A Cover-like scroll-scrubbed video background section built with native JavaScript.
Installation
- Upload the
etchenet-scroll-video-background-builderfolder to the/wp-content/plugins/directory, or install the ZIP through Plugins > Add New > Upload Plugin. - Activate the plugin through the Plugins screen in WordPress.
- Open the Etchenet Scroll Video Background Builder top-level admin menu to configure the plugin.
- Add the Etchenet Scroll Video Background Section block to a page or post, enable a page/post background in the document settings sidebar, configure an Elementor page/template/section background, or insert the Template Layer block in a block theme template.
FAQ
-
Does this plugin use GSAP or ScrollTrigger?
-
No. The ww.wp.xz.cn version uses native JavaScript only.
-
Does it load scripts on every page?
-
Frontend assets are loaded when the block or page/post background output is present.
-
Can I use it with posts?
-
Yes. The page/post sidebar panel is available for posts and pages.
-
Can I use it with block theme templates?
-
Yes. Insert the Etchenet Scroll Video Template Layer block into the desired block theme template or template part.
-
Can I use it with Elementor templates?
-
Yes. Edit the Elementor template, open the template document settings, and enable the Etchenet Scroll Video Background controls. You can also enable a background on individual Elementor sections or containers inside a template.
-
Why does mobile behave differently?
-
Mobile browsers may limit video preloading, seeking, or playback until the visitor interacts with the page. The plugin includes fallback classes, mobile behavior settings, poster support, and a muted inline priming attempt after the first user interaction.
-
Is the video accessible?
-
The video is decorative and marked with
aria-hidden="true". Keep meaningful content in normal Gutenberg blocks so the page remains useful without video. -
Can I use remote video URLs?
-
Yes, but performance is usually better when the video is optimized and served reliably. The plugin itself does not require any CDN.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Etchenet Scroll Video Background Builder” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Etchenet Scroll Video Background Builder” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.8
- Removed the legacy “Playback scroll range” field from WordPress admin sidebars, Gutenberg template controls, and Elementor document controls.
- Kept legacy saved values as desktop fallbacks when responsive desktop values are missing.
- Frontend output now sends only
data-range-desktop,data-range-tablet, anddata-range-mobilefor playback range selection.
1.1.7
- Renamed public PHP namespace, constants, option names, settings group, and Elementor setting keys to use the unique
etchenet_svbb/ETCHENET_SVBBplugin prefix required by ww.wp.xz.cn.
1.1.6
- Added responsive playback scroll range settings for desktop, tablet, and mobile.
- Added responsive scroll range support for Gutenberg page backgrounds, template layers, and section blocks.
- Added responsive scroll range support for Elementor document backgrounds and section/container backgrounds.
- Kept legacy playback scroll range values as desktop fallbacks for existing content.
1.1.5
- Declared compatibility with WordPress 7.0.
1.1.4
- Added Elementor editor live preview updates for document video backgrounds.
- Updated section/container preview behavior so changed Elementor video and overlay settings refresh in the preview without saving first.
1.1.3
- Restored Elementor overlay controls and output with working CSS variables.
- Kept Elementor video replacement fixes from 1.1.2.
1.1.2
- Removed Elementor overlay controls and Elementor overlay output.
- Made Media Library video selection take priority over stale manual URL values.
- Added attachment ID fallback when Elementor stores a media ID without a URL.
- Added smoothing support to Elementor page/template backgrounds.
1.1.1
- Added an admin setting for Elementor integration.
- Kept Elementor integration disabled by default until explicitly enabled.
1.1.0
- Added Elementor document controls for page and template fixed video backgrounds.
- Added Elementor section and container controls for independent scroll-scrubbed video background areas.
- Reused the existing native JavaScript frontend engine without GSAP, jQuery, remote APIs, or CDN dependencies.
- Updated frontend CSS and JavaScript so Elementor layouts receive scoped background layers without applying Gutenberg section layout styles.
1.0.3
- Added the Etchenet Scroll Video Template Layer block for block theme templates and template parts.
- Added a dynamic render callback for fixed template background video output.
- Added separate frontend assets for template background scroll scrubbing.
- Documented source files and the build process for ww.wp.xz.cn review.
1.0.2
- Removed the unstable global/template background option.
- Restored page and post background rendering so saved page settings render independently.
- Kept Site Editor templates isolated from page/post metadata.
1.0.1
- Added admin-based global/template background settings for blog, archive, search, and optional site-wide background output.
- Kept Site Editor templates free of page meta writes to avoid template save errors.
1.0.0
- Initial release.
- Added dedicated Cover-style Gutenberg section block with InnerBlocks.
- Added Media Library controls for video, mobile video, poster image, and mobile fallback image.
- Added separate page-level scroll video background settings in the Gutenberg document sidebar.
- Added native JavaScript scroll scrubbing.
- Added top-level admin documentation page.
- Added mobile fallback and reduced-motion handling.
- Added video optimization documentation.
