{"id":388174,"date":"2026-10-18T10:36:51","date_gmt":"2026-10-18T10:36:51","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/effortless-simple-parallax-carousel\/"},"modified":"2026-10-20T03:02:11","modified_gmt":"2026-10-20T03:02:11","slug":"effortless-simple-parallax-carousel","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/effortless-simple-parallax-carousel\/","author":23148025,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.8.7","stable_tag":"1.8.7","tested":"7.1.3","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"EffortLess Simple Parallax Carousel","header_author":"domclic","header_description":"Adds parallax backgrounds, scroll-triggered text fade-in animations and a swipeable carousel for galleries placed in cover and full-width group blocks.","assets_banners_color":"","last_updated":"2026-10-20 03:02:11","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/id7.dev\/donate\/","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":86,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.8.6":{"tag":"1.8.6","author":"domclic","date":"2026-10-18 10:36:36","revision":3752893},"1.8.7":{"tag":"1.8.7","author":"domclic","date":"2026-10-20 03:02:11","revision":3755837}},"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.8.6","1.8.7"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[785,786,210,2693,611],"plugin_category":[50],"plugin_contributors":[241557],"plugin_business_model":[],"class_list":["post-388174","plugin","type-plugin","status-publish","hentry","plugin_tags-animation","plugin_tags-carousel","plugin_tags-gallery","plugin_tags-parallax","plugin_tags-slider","plugin_category-media","plugin_contributors-domclic","plugin_committers-domclic"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/effortless-simple-parallax-carousel.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>EffortLess Simple Parallax Carousel adds three front-end behaviours to existing block-editor content. It does not add a new block: it works on the core Cover, Group and Gallery blocks you already use. Nothing in your saved post content is changed: galleries are marked as carousels while the page is generated, and the rest is done by a stylesheet and a JavaScript file loaded on the front end.<\/p>\n\n<p><strong>1. Parallax backgrounds<\/strong><\/p>\n\n<ul>\n<li>For Cover blocks, use the core <strong>Fixed background<\/strong> option of the block. The plugin does not change how cover blocks are displayed, so the focal point and \"Repeated background\" settings work as in core.<\/li>\n<li>If a default background image is set in the plugin settings, it is applied as a fixed background to every full-width group block (a Group block with \"Full width\" alignment) in the post or page content that has no background of its own (no image, gradient or theme background).<\/li>\n<li>On touch devices, on iOS, and for visitors who set \"reduce motion\", the default background scrolls normally instead of staying fixed.<\/li>\n<\/ul>\n\n<p><strong>2. Text fade-in on scroll<\/strong><\/p>\n\n<p>Every <code>h2<\/code>, <code>h3<\/code> and paragraph inside a Cover block or a full-width Group block of the post or page content is hidden from the moment the page is shown, and slides up into view when it enters the viewport (one second transition; elements that appear together are staggered by 100ms). This behaviour is always on while the plugin is active. The text is shown without animation for visitors who set \"reduce motion\", in browsers without <code>IntersectionObserver<\/code>, and when the plugin script has not started within three seconds (for example when it is blocked or delayed by an optimisation plugin).<\/p>\n\n<p><strong>3. Carousel gallery<\/strong><\/p>\n\n<p>When the carousel is enabled, every Gallery block that contains at least two images and sits inside a Cover block or a full-width Group block of the post or page content is shown as a slider. Each image becomes one slide. An image caption is shown over the bottom of its slide; bold text in the caption is displayed as a larger title line. The gallery keeps its alignment, CSS classes, anchor and gallery caption (shown below the slider), and images keep their link and the \"Expand on click\" lightbox. Galleries outside cover and full-width group blocks are not changed.<\/p>\n\n<p>The slider is written in plain JavaScript inside the plugin (<code>js\/frontend.js<\/code>); it does not depend on jQuery or any third-party library. It shows one image at a time and supports:<\/p>\n\n<ul>\n<li>Swiping left and right on touch screens, or dragging with the mouse.<\/li>\n<li>The left and right arrow keys when a carousel button has focus.<\/li>\n<li>Pausing autoplay while the mouse pointer is over the carousel, while one of its buttons has keyboard focus, and while the browser tab is hidden. Clicking or tapping the arrows and dots does not stop autoplay.<\/li>\n<li>Right-to-left languages: slides, arrows, swipe and arrow keys follow the reading direction.<\/li>\n<li>Visitors who set \"reduce motion\" in their operating system: slides change without the sliding animation and autoplay is off.<\/li>\n<li>Screen readers: the carousel, its slides, arrows and dots carry translated labels, and hidden slides are removed from the reading and tab order.<\/li>\n<\/ul>\n\n<h4>Settings<\/h4>\n\n<p>All settings are under <strong>Settings &gt; Parallax Carousel<\/strong>.<\/p>\n\n<ul>\n<li><strong>Default background image for full-width group blocks<\/strong> \u2013 An image URL. Click \"Choose image\" to pick one from the Media Library, or paste a URL. Default: empty. When empty, no default background is applied.<\/li>\n<li><strong>Enable carousel gallery<\/strong> \u2013 Checkbox. Default: off. When off, galleries are displayed as normal and the other carousel options have no effect.<\/li>\n<li><strong>Carousel autoplay delay (ms)<\/strong> \u2013 Number between 1000 and 10000, in steps of 500. Default: 3000. Time each slide is shown before moving to the next one. Values outside the range are clamped to it on save. Autoplay continues after a visitor uses the arrows, dots or swipe.<\/li>\n<li><strong>Enable carousel loop<\/strong> \u2013 Checkbox. Default: on. When on, the slider continues from the last slide to the first one seamlessly, in both directions. When off, the previous arrow is disabled on the first slide and the next arrow on the last slide, and autoplay rewinds to the first slide after the last one.<\/li>\n<li><strong>Show carousel navigation<\/strong> \u2013 Checkbox. Default: on. Shows previous\/next arrows on the slider.<\/li>\n<li><strong>Show carousel pagination<\/strong> \u2013 Checkbox. Default: on. Shows clickable dots at the bottom of the slider, one per slide.<\/li>\n<\/ul>\n\n<h4>Notes and limitations<\/h4>\n\n<ul>\n<li>All three effects only apply to Cover blocks and full-width Group blocks that are part of the post or page content. Groups that belong to the theme itself (header, footer, or the full-width wrapper many block themes put around the content) are not affected.<\/li>\n<li>Only galleries inside a Cover block or a Group block with full-width alignment are turned into a carousel. A gallery with a single image is left as it is.<\/li>\n<li>The text fade-in applies to all <code>h2<\/code>, <code>h3<\/code> and paragraph elements inside cover blocks and full-width group blocks. It cannot be switched off per block.<\/li>\n<li>The default background is not applied to a full-width group block that already has a background image or gradient.<\/li>\n<li>The default background scrolls normally instead of staying fixed on touch devices and for visitors who set \"reduce motion\".<\/li>\n<li>Only galleries using the block-based gallery format (WordPress 5.9 and later) become carousels. Galleries created in older versions keep their grid until they are updated in the editor.<\/li>\n<li>The effects are only applied on the front end. The block editor preview does not show them; view the published page to check the result.<\/li>\n<li>Full-width alignment must be supported by your theme for full-width group blocks to exist.<\/li>\n<li>On multisite, settings are stored per site.<\/li>\n<li>Uninstalling the plugin (deleting it from the Plugins screen) removes all of its settings, on every site of a multisite network.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>In the WordPress admin, go to <strong>Plugins &gt; Add New Plugin<\/strong>, search for \"EffortLess Simple Parallax Carousel\", then click <strong>Install Now<\/strong> and <strong>Activate<\/strong>. Alternatively, upload the <code>effortless-simple-parallax-carousel<\/code> folder to <code>\/wp-content\/plugins\/<\/code> and activate it from the <strong>Plugins<\/strong> screen.<\/li>\n<li>Go to <strong>Settings &gt; Parallax Carousel<\/strong>.<\/li>\n<li>To use the carousel, tick <strong>Enable carousel gallery<\/strong>, adjust the delay, loop, navigation and pagination options, then click <strong>Save Changes<\/strong>.<\/li>\n<li>Optionally, click <strong>Choose image<\/strong> next to <strong>Default background image for full-width group blocks<\/strong>, select an image and click <strong>Save Changes<\/strong>.<\/li>\n<li>Edit a page. Add a <strong>Cover<\/strong> block, or a <strong>Group<\/strong> block and set its alignment to <strong>Full width<\/strong> in the block toolbar.<\/li>\n<li>Inside it, add a <strong>Gallery<\/strong> block with at least two images. Add a caption to each image if you want text on the slides.<\/li>\n<li>Publish or update the page and view it on the front end.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"i%20enabled%20the%20carousel%20but%20my%20gallery%20is%20not%20a%20slider.%20what%20should%20i%20check%3F\"><h3>I enabled the carousel but my gallery is not a slider. What should I check?<\/h3><\/dt>\n<dd><ul>\n<li>The <strong>Enable carousel gallery<\/strong> checkbox is ticked and the settings were saved.<\/li>\n<li>The Gallery block is placed inside a Cover block, or inside a Group block whose alignment is <strong>Full width<\/strong> (not \"Wide\" or none).<\/li>\n<li>The gallery contains at least two images.<\/li>\n<li>You are looking at the published page, not the block editor.<\/li>\n<li>If you use a page-cache or asset-optimisation plugin, clear its cache. The carousel needs the plugin script <code>js\/frontend.js<\/code> to load on the page. If that script is delayed by more than three seconds, the gallery is shown as a normal grid.<\/li>\n<li>Galleries created before WordPress 5.9 must be opened and updated in the editor once (the editor offers to convert them).<\/li>\n<\/ul><\/dd>\n<dt id=\"the%20default%20background%20image%20does%20not%20appear\"><h3>The default background image does not appear<\/h3><\/dt>\n<dd><p>It is only applied to Group blocks with <strong>Full width<\/strong> alignment that do not already have a background (image, gradient or theme background) and that are part of the post or page content (not the theme's header, footer or templates). Check that the URL in the settings opens the image in your browser.<\/p><\/dd>\n<dt id=\"can%20i%20turn%20off%20the%20text%20animation%3F\"><h3>Can I turn off the text animation?<\/h3><\/dt>\n<dd><p>Not from the settings page. It applies to headings and paragraphs inside cover blocks and full-width group blocks while the plugin is active.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20contact%20any%20external%20service%3F\"><h3>Does the plugin contact any external service?<\/h3><\/dt>\n<dd><p>No. All scripts and styles are part of the plugin and are loaded from your own site.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.8.7<\/h4>\n\n<ul>\n<li>Translation files (.pot, .po, .mo) for Spanish, Traditional Chinese, Korean, French, Japanese, German, Italian and Brazilian Portuguese are included in the <code>languages<\/code> folder.<\/li>\n<\/ul>\n\n<h4>1.8.6<\/h4>\n\n<ul>\n<li>Carousel: clicking or tapping the arrows, dots or slides no longer stops autoplay; it pauses only for a mouse hover or keyboard focus.<\/li>\n<li>Carousel: works in right-to-left languages.<\/li>\n<li>Carousel: keeps the gallery alignment, classes, anchor and caption, and each image's link and lightbox.<\/li>\n<li>Carousel and text fade-in are laid out from the first paint, so text no longer disappears and reappears and galleries no longer jump when the page loads.<\/li>\n<li>Carousel: fixed a drag that could continue after the mouse button was released outside the carousel.<\/li>\n<li>All effects now apply only to cover and full-width group blocks of the post or page content. Before, block themes that wrap the content in a full-width group (such as Twenty Twenty-Five) had every gallery, heading and paragraph of the page affected, and the default background shown behind the whole page.<\/li>\n<li>Text fade-in: text already on screen is no longer delayed by text further down the page.<\/li>\n<li>The plugin now also starts when its script is loaded late by an optimisation plugin.<\/li>\n<li>Default background: no longer applied to groups with a gradient; no longer changes the position or overflow of the group; scrolls normally on touch devices and with reduced motion; URLs that already contain encoded characters now load.<\/li>\n<li>Cover blocks: removed style overrides that ignored the focal point, repeated backgrounds and core's iOS and reduced-motion handling.<\/li>\n<li>Uninstall removes the settings on every site of a multisite network.<\/li>\n<li>Settings are stored as autoloaded options, avoiding extra database queries on each page.<\/li>\n<li>Requires WordPress 6.2 or later.<\/li>\n<\/ul>\n\n<h4>1.8.5<\/h4>\n\n<ul>\n<li>Tested with WordPress 7.1.<\/li>\n<\/ul>\n\n<h4>1.8.4<\/h4>\n\n<ul>\n<li>Renamed the plugin to EffortLess Simple Parallax Carousel: folder, main file and text domain are now <code>effortless-simple-parallax-carousel<\/code>, and the settings page is under Settings &gt; Parallax Carousel.<\/li>\n<li>Renamed the internal prefix to <code>elspc<\/code>; settings saved under the earlier <code>elcws_<\/code> or <code>elpta_<\/code> names are copied over automatically once.<\/li>\n<\/ul>\n\n<h4>1.8.3<\/h4>\n\n<ul>\n<li>Replaced the bundled Swiper library with a built-in plain JavaScript carousel. The settings work as before; Swiper files are no longer shipped.<\/li>\n<li>Carousel: keyboard arrow keys, translated screen-reader labels, autoplay pause on hover\/focus\/hidden tab, and no animation or autoplay when the visitor prefers reduced motion.<\/li>\n<li>Carousel: images on the current and neighbouring slides are loaded in advance.<\/li>\n<li>With loop off, the arrows are disabled at the first and last slide.<\/li>\n<\/ul>\n\n<h4>1.8.2<\/h4>\n\n<ul>\n<li>Renamed the plugin folder, main file and text domain to <code>effortless-carousel-with-swiper<\/code>.<\/li>\n<li>Renamed the internal prefix to <code>elcws<\/code>; settings saved under the previous <code>elpta_<\/code> names are copied over automatically once.<\/li>\n<li>Made all admin text translatable.<\/li>\n<li>Checkbox settings are now saved as explicit on\/off values, and the autoplay delay is limited to 1000-10000 ms on save.<\/li>\n<li>The previous\/next arrows and dots are now bound to their own carousel when a page contains several carousels.<\/li>\n<li>Corrected the registered Swiper version number (12.0.2) and prefixed the Swiper script and style handles.<\/li>\n<li>Image captions are moved into the slide instead of being re-parsed as HTML.<\/li>\n<li>Removed debug console output, a duplicate inline stylesheet and an unused block script.<\/li>\n<li>Settings page: added a Media Library image filter, field labels and a page margin fix.<\/li>\n<li>Added an uninstall routine that removes the plugin settings.<\/li>\n<li>Rewrote the readme with setting-by-setting documentation.<\/li>\n<\/ul>\n\n<h4>1.8.1<\/h4>\n\n<ul>\n<li>Fixed output escaping.<\/li>\n<li>Swiper assets are now loaded from the plugin folder instead of a CDN.<\/li>\n<\/ul>\n\n<h4>1.8.0<\/h4>\n\n<ul>\n<li>Initial release with parallax, text animation and carousel features.<\/li>\n<\/ul>","raw_excerpt":"Parallax backgrounds, text fade-in on scroll and a swipeable carousel for galleries inside cover and full-width group blocks.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/388174","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=388174"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/domclic"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=388174"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=388174"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=388174"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=388174"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=388174"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=388174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}