{"id":382918,"date":"2026-10-09T08:22:52","date_gmt":"2026-10-09T08:22:52","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/aludra\/"},"modified":"2026-10-09T08:22:18","modified_gmt":"2026-10-09T08:22:18","slug":"aludra","status":"publish","type":"plugin","link":"https:\/\/srd.wordpress.org\/plugins\/aludra\/","author":32510,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.38.3","stable_tag":"2.38.3","tested":"7.1.3","requires":"6.9","requires_php":"7.4","requires_plugins":null,"header_name":"Aludra","header_author":"Jasper Frumau","header_description":"A page builder made of real blocks \u2014 32 blocks, 21 section patterns and 8 page layouts for everything between the header and the footer. Native block editor, no shortcodes, no proprietary markup. Built alongside the Aviendha starter theme; works with any theme.","assets_banners_color":"302230","last_updated":"2026-10-09 08:22:18","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/imagewize\/aludra","header_author_uri":"https:\/\/github.com\/imagewize","rating":0,"author_block_rating":0,"active_installs":0,"downloads":32,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.38.3":{"tag":"2.38.3","author":"Rhand","date":"2026-10-09 08:22:18","revision":3736191}},"upgrade_notice":{"2.4.1":"<p>Simplified mega menu layout modes to dropdown and overlay only. Improved dropdown width handling and mobile positioning. Breaking change: sidebar and grid modes removed.<\/p>","2.4.0":"<p>Major mega menu enhancements with multiple layout modes, template part integration, animations, and improved positioning. Breaking change: mega menu now requires theme integration for template part area registration. See documentation.<\/p>","2.3.1":"<p>Documentation cleanup only. No functional changes.<\/p>","2.3.0":"<p>Major carousel enhancements with new navigation modes, arrow customization, and block patterns. Testing complete.<\/p>","2.2.2":"<p>Important WordPress.org compliance fixes including consistent text domains and security improvements. Recommended update for all users.<\/p>","2.2.1":"<p>Adds WordPress.org distribution infrastructure. No functional changes to blocks.<\/p>","2.2.0":"<p>Initial public release with three custom blocks optimized for the Aludra theme.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3736191,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3736191,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3736191,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3736191,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3736191,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"aludra\/cta-banner":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/cta-banner","version":"1.1.0","title":"CTA Banner","category":"aludra-convert","icon":"megaphone","description":"Full-width call-to-action band with heading, lead text, and button \u2014 colours adapt to the active theme's palette. Dark by default; the Light style gives a white-ground variant.","keywords":["cta","call to action","banner","contact"],"example":{},"styles":[{"name":"default","label":"Dark","isDefault":true},{"name":"light","label":"Light"}],"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"full"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/pricing-tiers":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/pricing-tiers","version":"1.0.1","title":"Pricing Tiers","category":"aludra-convert","icon":"money-alt","description":"Display pricing options in a multi-column comparison layout (default: 3 columns) with featured tier highlighting \u2014 as separate cards (default) or as one bordered spec sheet split by internal hairlines.","keywords":["pricing","tiers","plans","comparison","table"],"example":{},"styles":[{"name":"cards","label":"Cards","isDefault":true},{"name":"spec-sheet","label":"Spec sheet"}],"supports":{"html":false,"align":["wide","full"],"color":{"background":true,"text":false,"link":false},"spacing":{"padding":true,"margin":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"full"},"backgroundColor":{"type":"string","default":"base"},"className":{"type":"string","default":"wp-block-aludra-pricing-tiers"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/stat-rail":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/stat-rail","version":"1.1.0","title":"Stat Rail","category":"aludra-proof","icon":"chart-bar","description":"A full-width band of big-number stats with captions, for the seam between a hero and the rest of the page.","keywords":["stats","metrics","numbers","rail","band"],"styles":[{"name":"default","label":"Dark band","isDefault":true},{"name":"light","label":"Light band"}],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"attributes":{"align":{"type":"string","default":"full"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}},"example":{"attributes":{}}},"aludra\/feature-cards":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/feature-cards","version":"1.0.0","title":"Feature Cards","category":"aludra-features","icon":"grid-view","description":"A responsive grid of feature highlight cards with icons, hover effects, and a section header.","keywords":["features","cards","grid","icons","highlights"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","supports":{"html":false,"anchor":true,"align":["wide","full"],"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"attributes":{"align":{"type":"string","default":"full"}},"example":{"attributes":{}}},"aludra\/review-profiles":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/review-profiles","version":"1.0.0","title":"Review Profiles","category":"aludra-proof","icon":"groups","description":"Full-width client review section with a heading and a row of quotes \u2014 as round avatar photos (default) or as avatar-free quote cards with role and sector attribution. Colours adapt to the active theme's palette.","keywords":["reviews","testimonials","clients","avatars"],"example":{},"styles":[{"name":"avatars","label":"Avatars","isDefault":true},{"name":"quotes","label":"Quote cards"}],"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"full"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/search-overlay-trigger":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/search-overlay-trigger","version":"1.0.0","title":"Search Overlay Trigger","category":"aludra-navigation","icon":"search","description":"A search icon that opens a full-screen search overlay when clicked.","keywords":["search","overlay","trigger","icon","modal"],"supports":{"html":false,"anchor":false},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","viewScript":"file:.\/view.js","attributes":{"iconSize":{"type":"string","default":"20px"},"overlayBackgroundColor":{"type":"string","default":"rgba(255, 255, 255, 0.95)"},"searchBarBorderColor":{"type":"string","default":"#cccccc"},"closeButtonColor":{"type":"string","default":"#000000"}}},"aludra\/comparison-table":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/comparison-table","version":"1.0.1","title":"Comparison Table","category":"aludra-proof","icon":"editor-table","description":"A filterable spec-sheet comparison: a centred header, a row of pills that filter the table by category, and a bordered table with your own column highlighted against up to three competitors.","keywords":["comparison","table","pricing","filter","spec sheet"],"example":{},"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","viewScript":"file:.\/view.js","attributes":{"align":{"type":"string","default":"full"},"tint":{"type":"boolean","default":false},"eyebrow":{"type":"string","source":"html","selector":".comparison-table__eyebrow","default":""},"heading":{"type":"string","source":"html","selector":".comparison-table__heading","default":""},"lead":{"type":"string","source":"html","selector":".comparison-table__lead","default":""},"paramColumnLabel":{"type":"string","source":"html","selector":".comparison-table__head-cell--param","default":"Structural Parameter"},"vendorOurs":{"type":"string","source":"html","selector":".comparison-table__head-cell--ours","default":"Ours"},"vendorOne":{"type":"string","source":"html","selector":".comparison-table__head-cell--v1","default":"Competitor"},"vendorTwo":{"type":"string","source":"html","selector":".comparison-table__head-cell--v2","default":"Competitor"},"vendorThree":{"type":"string","source":"html","selector":".comparison-table__head-cell--v3","default":"Competitor"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/about":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/about","version":"1.0.0","title":"About Section","category":"aludra-layout","icon":"admin-page","description":"Full-width about\/value-proposition section with heading, lead text, an offer list, and closing copy \u2014 colours adapt to the active theme's palette.","keywords":["about","value proposition","offer","section"],"example":{},"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"full"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/service-blocks":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/service-blocks","version":"1.1.0","title":"Service Detail Cards","category":"aludra-features","icon":"list-view","description":"Stacked, numbered service cards with a heading, description, and checklist \u2014 colours adapt to the active theme's palette.","keywords":["service","checklist","services","numbered","cards"],"example":{},"styles":[{"name":"default","label":"Default","isDefault":true},{"name":"steps","label":"Numbered steps"}],"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"wide"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/trust-bar":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/trust-bar","version":"1.0.0","title":"Trust Bar","category":"aludra-proof","icon":"yes-alt","description":"Inline bar of trust-signal items (icon + text) that wraps on mobile.","keywords":["trust","bar","signals","icons","badges"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"attributes":{"align":{"type":"string","default":"full"}},"example":{"attributes":{}}},"aludra\/services-block":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/services-block","version":"1.0.0","title":"Services Block","category":"aludra-features","icon":"list-view","description":"Section header with icon, heading, and text services \u2014 as a two-per-row card grid (default) or as a numbered hairline list. Colours adapt to the active theme's palette.","keywords":["services","features","icon","grid","cards"],"example":{},"styles":[{"name":"cards","label":"Cards","isDefault":true},{"name":"list","label":"Numbered list"}],"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"full"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/faq-tabs":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/faq-tabs","version":"1.0.0","title":"FAQ Tabs","category":"aludra-convert","icon":"list-view","description":"FAQ list with vertical tab navigation, a stacked accordion, or native <details> elements that need no JavaScript.","keywords":["faq","tabs","accordion","questions","interactive"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","viewScript":"file:.\/view.js","attributes":{"align":{"type":"string","default":"wide"},"displayMode":{"type":"string","enum":["tabs","accordion","native"],"default":"tabs"}},"supports":{"html":false,"anchor":true,"align":["wide","full"],"spacing":{"margin":true,"padding":true,"blockGap":true},"color":{"background":true,"text":true,"link":true}},"example":{"attributes":{}}},"aludra\/instagram-embed":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/instagram-embed","version":"1.0.0","title":"Instagram Embed","category":"aludra-proof","icon":"instagram","description":"Live Instagram profile feed via Instagram's own public embed iframe \u2014 no developer app or API key. Loads only after a visitor clicks 'Load feed', so nothing from instagram.com fires before consent. Unofficial and undocumented by Meta: this is the same kind of endpoint that broke without notice in 2020 (Meta's old oEmbed shutdown) \u2014 verify it still works before relying on it, and always give the client a plain profile link as a fallback.","keywords":["instagram","social","feed","embed"],"example":{},"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","viewScript":"file:.\/view.js","render":"file:.\/render.php","attributes":{"username":{"type":"string","default":""},"height":{"type":"number","default":600},"align":{"type":"string","default":"full"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/cta-columns":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/cta-columns","version":"1.1.0","title":"CTA Columns","category":"aludra-convert","icon":"megaphone","description":"Dual call-to-action cards with headings, descriptions, and buttons","keywords":["cta","call to action","buttons","cards","conversion"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","supports":{"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true}},"attributes":{"align":{"type":"string","default":"full"},"colorVariant":{"type":"string","default":"default"},"revealOnScroll":{"type":"boolean","default":false},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}},"example":{"attributes":{}}},"aludra\/split-section":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/split-section","version":"1.0.2","title":"Split Section","category":"aludra-layout","icon":"columns","description":"A page section with a centred header and two panes \u2014 media on one side, content on the other. Collapses to a single stacked column on narrow screens.","keywords":["section","split","media","two column","layout"],"example":{},"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"full"},"label":{"type":"string","source":"html","selector":".split-section__label","default":""},"heading":{"type":"string","source":"html","selector":".split-section__heading","default":""},"lead":{"type":"string","source":"html","selector":".split-section__lead","default":""},"reversed":{"type":"boolean","default":false},"mediaWidth":{"type":"number","default":50},"tint":{"type":"boolean","default":false},"revealOnScroll":{"type":"boolean","default":false},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/load-waterfall":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/load-waterfall","version":"1.1.0","title":"Load Waterfall","category":"aludra-hero","icon":"chart-bar","description":"A network load-time waterfall panel with an animated LCP marker, for hero sections that need to show off site speed.","keywords":["waterfall","performance","lcp","speed","hero"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","supports":{"html":false,"anchor":true,"spacing":{"margin":true,"padding":true}},"attributes":{"siteUrl":{"type":"string","default":"harvest-table.com"},"badge":{"type":"string","default":"after rebuild"},"rowLabels":{"type":"array","default":["document","critical.css","hero.webp","fonts","cart.js","analytics"]},"lcpLabel":{"type":"string","default":"LCP 0.9s"}},"example":{"attributes":{}}},"aludra\/service-intro":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/service-intro","version":"1.0.0","title":"Service Intro","category":"aludra-layout","icon":"text","description":"Introductory text section for service pages \u2014 constrained width, colours adapt to the active theme's palette.","keywords":["intro","text","paragraphs","service"],"example":{},"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"full"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/contact-section":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/contact-section","version":"1.1.0","title":"Contact Section","category":"aludra-convert","icon":"email","description":"Contact section with info column and Contact Form 7 form card. Dark by default; the Light style gives a white-ground variant.","keywords":["contact","form","cf7","section"],"example":{},"styles":[{"name":"default","label":"Dark","isDefault":true},{"name":"light","label":"Light"}],"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"full"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/spine-section":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/spine-section","version":"1.0.4","title":"Spine Section","category":"aludra-layout","icon":"align-pull-left","description":"A page section with a sticky label\/heading column on the left and its content on the right. Collapses to a single stacked column on narrow screens.","keywords":["section","spine","editorial","sticky","two column"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"attributes":{"align":{"type":"string","default":"full"},"label":{"type":"string","source":"html","selector":".spine-section__label","default":""},"heading":{"type":"string","source":"html","selector":".spine-section__heading","default":""},"aside":{"type":"string","source":"html","selector":".spine-section__aside","default":""},"tint":{"type":"boolean","default":false},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}},"example":{"attributes":{"label":"What we do","heading":"Speed is a feature you can sell.","aside":"Most of our work starts as a rescue and turns into a rebuild."}}},"aludra\/feature-list-grid":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/feature-list-grid","version":"1.0.1","title":"Feature List Grid","category":"aludra-features","icon":"grid-view","description":"Display features in a 2-column grid with checkmarks and hover effects.","keywords":["features","list","grid","checklist","checkmarks"],"example":{},"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true,"blockGap":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"className":{"type":"string","default":"wp-block-aludra-feature-list-grid"},"align":{"type":"string","default":"wide"}}},"aludra\/carousel":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/carousel","version":"1.1.1","title":"Carousel","category":"aludra-layout","icon":"slides","description":"Create a customizable slideshow of content with this carousel block.","keywords":["carousel","slider","slideshow","gallery","slides"],"supports":{"align":["wide","full"],"html":false,"anchor":true},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"engine":{"type":"string","default":"slick"},"slidesToShow":{"type":"number","default":3},"slidesToScroll":{"type":"number","default":1},"arrows":{"type":"boolean","default":true},"dots":{"type":"boolean","default":true},"infinite":{"type":"boolean","default":true},"autoplay":{"type":"boolean","default":false},"autoplaySpeed":{"type":"number","default":3000},"speed":{"type":"number","default":300},"rtl":{"type":"boolean","default":false},"responsiveWidth":{"type":"number","default":768},"responsiveSlides":{"type":"number","default":1},"responsiveSlidesToScroll":{"type":"number","default":1},"slides":{"type":"number","default":4},"slidePadding":{"type":"boolean","default":true},"arrowColor":{"type":"string","default":"#000000"},"arrowBackground":{"type":"string","default":"transparent"},"arrowHoverColor":{"type":"string","default":"#000000"},"arrowHoverBackground":{"type":"string","default":"transparent"},"dotsBottomSpacing":{"type":"string","default":"0px"},"adaptiveHeight":{"type":"boolean","default":false},"enableThumbnails":{"type":"boolean","default":false},"thumbnailsToShow":{"type":"number","default":4},"thumbnailPosition":{"type":"string","default":"below"},"thumbnailSpacing":{"type":"string","default":"30px"},"centerMode":{"type":"boolean","default":false},"centerPadding":{"type":"string","default":"60px"},"variableWidth":{"type":"boolean","default":false},"lazyLoad":{"type":"string","default":"ondemand"},"arrowStyle":{"type":"string","default":"arrow"},"arrowBackgroundStyle":{"type":"string","default":"none"},"arrowSize":{"type":"number","default":40},"customArrowSvg":{"type":"string","default":""}}},"aludra\/hero-split":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/hero-split","version":"1.3.0","title":"Hero Split","category":"aludra-hero","icon":"columns","description":"Split-pane hero with heading, lead text, and a button on one side, and a desktop\/mobile image pair on the other \u2014 colours adapt to the active theme's palette.","keywords":["hero","split","image","banner"],"example":{},"styles":[{"name":"default","label":"Default","isDefault":true},{"name":"night","label":"Night"}],"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"full"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/hero-banner":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/hero-banner","version":"1.0.2","title":"Hero Banner","category":"aludra-hero","icon":"cover-image","description":"Full-width hero with an eyebrow badge, heading, lead text, and dual CTA buttons. Dark by default; the Canvas style gives a light, centred variant.","keywords":["hero","banner","cta","eyebrow"],"example":{},"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true}},"styles":[{"name":"default","label":"Default","isDefault":true},{"name":"canvas","label":"Canvas"}],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"full"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/photo-grid":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/photo-grid","version":"1.0.0","title":"Photo Grid","category":"aludra-proof","icon":"grid-view","description":"Full-width band with a heading, a follow link, and a tight square photo grid \u2014 for an Instagram-style feed section. Fully static: drop in your own photos, no API key or live connection to maintain. Colours adapt to the active theme's palette.","keywords":["instagram","social","photos","gallery","feed"],"example":{},"supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"align":{"type":"string","default":"full"},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}}},"aludra\/icon-grid":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/icon-grid","version":"1.0.0","title":"Icon Grid","category":"aludra-features","icon":"grid-view","description":"Responsive auto-fit grid of icon + text items with an eyebrow, title, and lead.","keywords":["icon","grid","checklist","features","list"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"attributes":{"align":{"type":"string","default":"wide"}},"example":{"attributes":{}}},"aludra\/testimonial-grid":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/testimonial-grid","version":"1.0.1","title":"Testimonial Grid","category":"aludra-proof","icon":"format-quote","description":"Display customer testimonials in a 3-column grid with metrics.","keywords":["testimonial","grid","reviews","quotes","carousel"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","viewScript":"file:.\/view.js","supports":{"html":false,"align":["wide","full"],"anchor":true,"spacing":{"margin":true,"padding":true},"color":{"background":true,"text":true}},"attributes":{"className":{"type":"string","default":"wp-block-aludra-testimonial-grid"},"align":{"type":"string","default":"full"},"slidesToShow":{"type":"number","default":3},"slidesToScroll":{"type":"number","default":1},"arrows":{"type":"boolean","default":true},"dots":{"type":"boolean","default":true},"infinite":{"type":"boolean","default":true},"autoplay":{"type":"boolean","default":false},"autoplaySpeed":{"type":"number","default":3000},"speed":{"type":"number","default":300},"arrowColor":{"type":"string","default":"#1a1a1a"},"arrowBackground":{"type":"string","default":"#d4ecf5"},"arrowHoverColor":{"type":"string","default":"#000000"},"arrowHoverBackground":{"type":"string","default":"#d4ecf5"},"dotsBottomSpacing":{"type":"string","default":"-45px"},"slideSpacing":{"type":"number","default":12},"style":{"type":"object","default":{"spacing":{"margin":{"top":"0","bottom":"0"}}}}},"example":{"attributes":{}}},"aludra\/slide":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/slide","version":"1.0.0","title":"Slide","parent":["aludra\/carousel"],"category":"aludra-layout","icon":"media","description":"A single slide container that can hold any content within the carousel.","keywords":["slide","carousel","slider"],"supports":{"html":false},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"slideId":{"type":"string","default":""}}},"aludra\/stat-item":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/stat-item","version":"1.1.0","title":"Stat Item","parent":["aludra\/stat-rail"],"category":"aludra-proof","icon":"chart-bar","description":"A single big-number stat with a caption, used inside Stat Rail.","keywords":["stat","metric","number"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","supports":{"html":false},"attributes":{"number":{"type":"string","default":"0"},"caption":{"type":"string","default":"Caption"},"good":{"type":"boolean","default":false},"level":{"type":"number","default":0},"numberColor":{"type":"string"},"customNumberColor":{"type":"string"},"captionColor":{"type":"string"},"customCaptionColor":{"type":"string"}}},"aludra\/faq-tab-answer":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/faq-tab-answer","version":"1.0.0","title":"FAQ Tab Answer","category":"aludra-convert","parent":["aludra\/faq-tabs"],"icon":"editor-alignleft","description":"A single FAQ tab answer with customizable content.","keywords":["faq","answer","content"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"question":{"type":"string","default":"New Question"},"title":{"type":"string","default":"Answer Title"},"displayMode":{"type":"string","enum":["tabs","accordion","native"],"default":"tabs"},"openByDefault":{"type":"boolean","default":false}},"supports":{"html":false,"reusable":false,"lock":false}},"aludra\/comparison-row":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/comparison-row","version":"1.0.0","title":"Comparison Row","category":"aludra-proof","parent":["aludra\/comparison-table"],"icon":"list-view","description":"One structural parameter in a comparison table \u2014 a label plus four fixed answer cells (yours, then three competitors). Tag it with a category to control which filter pill reveals it.","keywords":["comparison","row","table","filter"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"label":{"type":"string","source":"html","selector":".comparison-row__label","default":""},"parameterKey":{"type":"string","source":"html","selector":".comparison-row__key","default":""},"category":{"type":"string","default":""}},"supports":{"html":false,"reusable":false}},"aludra\/comparison-cell":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/comparison-cell","version":"1.0.0","title":"Comparison Cell","category":"aludra-proof","parent":["aludra\/comparison-row"],"icon":"editor-alignleft","description":"One vendor's answer for a single row of a comparison table \u2014 a short heading plus a description. The first cell in every row is styled as the highlighted column automatically.","keywords":["comparison","cell","table"],"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","attributes":{"heading":{"type":"string","source":"html","selector":".comparison-cell__heading","default":""},"body":{"type":"string","source":"html","selector":".comparison-cell__body","default":""}},"supports":{"html":false,"reusable":false}},"aludra\/mega-menu":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"aludra\/mega-menu","version":"0.1.3","title":"Mega Menu","category":"aludra-navigation","icon":"menu-alt","description":"Create dynamic mega menus with template parts and advanced styling options.","keywords":["menu","navigation","mega menu","dropdown"],"parent":["core\/navigation","aludra\/nav-builder"],"attributes":{"label":{"type":"string","default":""},"labelColor":{"type":"string"},"description":{"type":"string","default":""},"menuSlug":{"type":"string","default":""},"layoutMode":{"type":"string","default":"dropdown","enum":["dropdown","overlay"]},"enableAnimations":{"type":"boolean","default":false},"animationType":{"type":"string","default":"fade","enum":["fade","slide","scale","slidefade"]},"animationSpeed":{"type":"number","default":300},"enableIcon":{"type":"boolean","default":false},"iconName":{"type":"string","default":""},"iconPosition":{"type":"string","default":"left","enum":["left","right","top"]},"customSVG":{"type":"string","default":""},"enableMobileMode":{"type":"boolean","default":true},"mobileBreakpoint":{"type":"number","default":768},"dropdownAlignment":{"type":"string","default":"left","enum":["left","right","center"]},"dropdownSpacing":{"type":"number","default":16},"dropdownMaxWidth":{"type":"number","default":600},"useFullWidth":{"type":"boolean","default":false},"overlayBackdropColor":{"type":"string","default":"rgba(0, 0, 0, 0.5)"},"enableHoverActivation":{"type":"boolean","default":false},"panelBoxShadow":{"type":"string","default":"default"},"panelBorderRadius":{"type":"number","default":4},"panelBorderWidth":{"type":"number","default":0},"panelBorderColor":{"type":"string","default":""},"panelBackdropBlur":{"type":"boolean","default":false}},"example":{"attributes":{"label":"Features","description":"Explore our powerful features"}},"supports":{"html":false,"interactivity":true,"renaming":false,"reusable":false,"typography":{"fontSize":true,"lineHeight":true,"__experimentalFontFamily":true,"__experimentalFontWeight":true,"__experimentalFontStyle":true,"__experimentalTextTransform":true,"__experimentalTextDecoration":true,"__experimentalLetterSpacing":true,"__experimentalDefaultControls":{"fontSize":true}},"__experimentalSlashInserter":true},"textdomain":"aludra","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","viewScriptModule":"file:.\/view.js","render":"file:.\/render.php"}},"tagged_versions":["2.38.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3736191,"resolution":"1","location":"assets","locale":"","width":1280,"height":653},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3736191,"resolution":"2","location":"assets","locale":"","width":1280,"height":637},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3736191,"resolution":"3","location":"assets","locale":"","width":1280,"height":788},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3736191,"resolution":"4","location":"assets","locale":"","width":1280,"height":496},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3736191,"resolution":"5","location":"assets","locale":"","width":1280,"height":691}},"screenshots":{"1":"Hero Split section with a Stat Rail directly beneath it","2":"Pricing Tiers section \u2014 three plans with the featured tier highlighted","3":"Services section \u2014 numbered, icon-led service rows beside a sticky heading","4":"Client reviews section \u2014 three testimonial cards","5":"FAQ section with the first answer expanded"}},"plugin_section":[],"plugin_tags":[4121,808,1084,18850,12900],"plugin_category":[43],"plugin_contributors":[265722],"plugin_business_model":[],"class_list":["post-382918","plugin","type-plugin","status-publish","hentry","plugin_tags-blocks","plugin_tags-landing-page","plugin_tags-page-builder","plugin_tags-patterns","plugin_tags-sections","plugin_category-customization","plugin_contributors-rhand","plugin_committers-rhand"],"banners":{"banner":"https:\/\/ps.w.org\/aludra\/assets\/banner-772x250.png?rev=3736191","banner_2x":"https:\/\/ps.w.org\/aludra\/assets\/banner-1544x500.png?rev=3736191","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/aludra\/assets\/icon.svg?rev=3736191","icon":"https:\/\/ps.w.org\/aludra\/assets\/icon.svg?rev=3736191","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/aludra\/assets\/screenshot-1.png?rev=3736191","caption":"Hero Split section with a Stat Rail directly beneath it"},{"src":"https:\/\/ps.w.org\/aludra\/assets\/screenshot-2.png?rev=3736191","caption":"Pricing Tiers section \u2014 three plans with the featured tier highlighted"},{"src":"https:\/\/ps.w.org\/aludra\/assets\/screenshot-3.png?rev=3736191","caption":"Services section \u2014 numbered, icon-led service rows beside a sticky heading"},{"src":"https:\/\/ps.w.org\/aludra\/assets\/screenshot-4.png?rev=3736191","caption":"Client reviews section \u2014 three testimonial cards"},{"src":"https:\/\/ps.w.org\/aludra\/assets\/screenshot-5.png?rev=3736191","caption":"FAQ section with the first answer expanded"}],"raw_content":"<!--section=description-->\n<p>Aludra is a page builder for the WordPress block editor \u2014 not a separate editing app bolted on top of it. 32 native blocks, 21 ready-made sections and 8 whole page layouts, built and edited in the editor you already have. No shortcodes, no proprietary markup, and nothing that turns into a wall of broken tags the day you switch it off.<\/p>\n\n<p>A theme gives you the palette, the type, the header and the footer; Aludra gives you everything between them \u2014 the bands a page is actually made of: heroes, stat rails, trust bars, feature grids, pricing tiers, comparison tables, FAQs, reviews, contact sections and CTA bands.<\/p>\n\n<p>That holds whatever the site is for. The same sections build a portfolio, a services site, a one-page launch, or a straightforward online presence for a business \u2014 the bands are the same, the copy is not.<\/p>\n\n<p>You rarely start from an empty block. You pick a section \u2014 a hero that already has its eyebrow, heading, lead and buttons, in the right style variation \u2014 drop it in and replace the copy. Or you pick a whole page pattern and delete the parts you do not need.<\/p>\n\n<h4>What you get<\/h4>\n\n<ul>\n<li><strong>21 section patterns<\/strong> \u2014 one page band each, grouped into Heroes, Proof, Features &amp; Services, Layout and Convert. Every content block has one<\/li>\n<li><strong>8 page patterns<\/strong> \u2014 homepage, landing, service, services overview, pricing, about, team and contact, offered when you create a new page<\/li>\n<li><strong>32 blocks<\/strong> \u2014 grouped into six inserter categories that follow the order a page gets built in, and individually enable\/disable-able under Settings \u2192 Aludra<\/li>\n<li><strong>13 more patterns<\/strong> \u2014 five pre-configured carousels and eight mega menu layouts for menu template parts<\/li>\n<\/ul>\n\n<h4>Building a site with Aludra<\/h4>\n\n<p>That division is the whole idea, and <strong>Aviendha<\/strong> (https:\/\/github.com\/imagewize\/aviendha) is the theme built to it \u2014 a starter FSE theme developed alongside this plugin that ships no blocks or patterns of its own and composes its pages entirely from Aludra sections. <strong>Ixian<\/strong> (https:\/\/github.com\/imagewize\/ixian) is the opinionated sibling: forked from Aviendha, with finished page patterns for service businesses and SaaS, every one of them built from Aludra blocks.<\/p>\n\n<p>None of that is required. Aludra is theme-neutral \u2014 blocks resolve colours from the active theme's palette with fallbacks, so they render correctly on any FSE, block, or classic theme.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>The Instagram Embed block (<code>aludra\/instagram-embed<\/code>) is the only part of Aludra that connects to a third-party service. No other block, pattern or admin screen makes outside requests, and Aludra does not track visitors or send data to its authors.<\/p>\n\n<p><strong>Instagram (Meta Platforms, Inc.)<\/strong><\/p>\n\n<ul>\n<li><strong>What it is used for:<\/strong> showing a live feed of a public Instagram profile through Instagram's own embed page, <code>https:\/\/www.instagram.com\/&lt;username&gt;\/embed<\/code>.<\/li>\n<li><strong>When it loads:<\/strong> only after a visitor clicks the \"Load feed\" button. Until then the page contains no iframe and makes no request to instagram.com, so the block can sit behind your own consent flow.<\/li>\n<li><strong>What is sent:<\/strong> the Instagram username you entered in the block, in the iframe address. Once the iframe loads, Instagram receives the visitor's IP address, browser details and any Instagram cookies, as with any Instagram embed.<\/li>\n<li><strong>In the editor:<\/strong> the same gate applies. The block editor loads the feed preview only when an editor clicks \"Load Instagram feed\". The plugin's own server never contacts Instagram and stores nothing.<\/li>\n<li><strong>Availability:<\/strong> this is an undocumented Instagram endpoint that Meta may change or remove. Each block shows a plain link to the profile as a fallback.<\/li>\n<li>Instagram Terms of Use: https:\/\/help.instagram.com\/581066165581870<\/li>\n<li>Meta Privacy Policy: https:\/\/privacycenter.meta.com\/policy<\/li>\n<\/ul>\n\n<p>If you do not use the Instagram Embed block, nothing is ever sent to Instagram. You can also turn the block off under Settings \u2192 Aludra.<\/p>\n\n<h3>Source Code<\/h3>\n\n<p>This plugin ships no obfuscated or minified-only code.<\/p>\n\n<p>Every block ships its human-readable source in <code>blocks\/&lt;block&gt;\/src\/<\/code> next to the compiled output the plugin actually loads in <code>blocks\/&lt;block&gt;\/build\/<\/code>, along with the <code>package.json<\/code> carrying its exact scripts and dependency versions. The build is standard <code>@wordpress\/scripts<\/code>; each block has isolated dependencies and is built from its own directory:<\/p>\n\n<pre><code>cd blocks\/&lt;block-name&gt; &amp;&amp; npm install &amp;&amp; npm run build\n<\/code><\/pre>\n\n<p>The mega-menu block additionally passes <code>--experimental-modules<\/code> to <code>wp-scripts<\/code>.<\/p>\n\n<p>The one third-party compiled asset is Slick Carousel, vendored under <code>blocks\/carousel\/slick\/<\/code>. Its uncompressed source (<code>slick.js<\/code>) ships beside the <code>slick.min.js<\/code> the plugin enqueues \u2014 see == Third-Party Libraries == below for version, license and the one local modification.<\/p>\n\n<p>The full development repository is public: https:\/\/github.com\/imagewize\/aludra<\/p>\n\n<h3>Third-Party Libraries<\/h3>\n\n<h4>Slick Carousel<\/h4>\n\n<ul>\n<li>Version: 1.8.1<\/li>\n<li>License: MIT License<\/li>\n<li>Source: https:\/\/kenwheeler.github.io\/slick\/<\/li>\n<li>Used in: Carousel block<\/li>\n<li>Files: blocks\/carousel\/slick\/<\/li>\n<li>Purpose: Powers the carousel\/slider functionality<\/li>\n<li>Source included: <code>slick.js<\/code>, the uncompressed 1.8.1 build, ships beside the <code>slick.min.js<\/code> that is enqueued. <code>slick.css<\/code> is upstream's uncompressed stylesheet<\/li>\n<li>Local modification: one line of <code>slick-theme.css<\/code> \u2014 the <code>.slick-loading .slick-list<\/code> rule drops upstream's <code>url('.\/ajax-loader.gif')<\/code> background, as that image is not vendored. Every other file is byte-identical to the official 1.8.1 release<\/li>\n<\/ul>\n\n<p>The MIT License is GPL-compatible.<\/p>\n\n<h3>Credits<\/h3>\n\n<h4>Plugin Icon and Logo<\/h4>\n\n<p>The plugin icon (.wordpress-org\/icon.svg) and the logo displayed in README.md (assets\/logos\/h-fireworks.svg) are the Hugeicons fireworks icon from Blade UI Kit (Blade Icons) \u2014 a nod to the Nightflower fireworks of the Illuminators in The Wheel of Time, Aludra's namesake. The icon is drawn in an ember gradient on a dark tile; the README logo is a flat ember orange (#D9480F).\n* Fireworks icon source: https:\/\/blade-ui-kit.com\/blade-icons\/hugeicons-fireworks\n* Blade Icons license: https:\/\/github.com\/driesvints\/blade-icons\/blob\/main\/LICENSE.md (MIT License)<\/p>\n\n<h4>Homepage Pattern Client Icons<\/h4>\n\n<p>The bike and noodle-bowl icons used in the homepage pattern's \"Our Clients\" carousel are from Blade UI Kit (Blade Icons), sourced from the Tabler Icons and Maki Icons sets respectively.\n* Bike icon source: https:\/\/blade-ui-kit.com\/blade-icons\/tabler-bike\n* Restaurant icon source: https:\/\/blade-ui-kit.com\/blade-icons\/maki-restaurant-noodle\n* Blade Icons license: https:\/\/github.com\/driesvints\/blade-icons\/blob\/main\/LICENSE.md (MIT License)<\/p>\n\n<h4>Review Avatar Placeholder<\/h4>\n\n<p>The bundled review-avatar placeholder (assets\/placeholders\/avatar.svg) is the eos-face icon from Blade UI Kit (Blade Icons), sourced from the EOS Icons set and recoloured into Aludra's warm sand\/terracotta neutrals.\n* Face icon source: https:\/\/blade-ui-kit.com\/blade-icons\/eos-face\n* Blade Icons license: https:\/\/github.com\/driesvints\/blade-icons\/blob\/main\/LICENSE.md (MIT License)<\/p>\n\n<h4>Mega Menu Implementation<\/h4>\n\n<p>The mega menu block was originally inspired by the HM Mega Menu Block by Human Made and substantially enhanced.\n* Original Source: https:\/\/github.com\/humanmade\/hm-mega-menu-block\n* License: GPL v2 or later\n* Enhancements: Added multiple layout modes (dropdown\/overlay), advanced JavaScript-based positioning for full-width panels, mobile responsive state management, comprehensive focus trap and keyboard navigation, body scroll lock, animation controls, and extensive accessibility improvements. The implementation is approximately 181% larger with substantially different functionality.<\/p>\n\n<h4>Carousel Block Implementation<\/h4>\n\n<p>The carousel block was originally inspired by the Carousel Block Plugin by Virgiliu Diaconu but completely reimplemented.\n* Original Source: https:\/\/wordpress.org\/plugins\/carousel-block\/\n* License: GPL v2 or later\n* Reimplementation: Completely rebuilt using Slick Carousel library (vs original Swiper.js), with distinct features including thumbnail navigation, center mode with peek, variable width slides, lazy loading, adaptive height, advanced arrow customization with multiple SVG styles, custom SVG support, 5 block patterns, and extensive styling controls. Different codebase and functionality from the original.<\/p>\n\n<h3>Developer Information<\/h3>\n\n<h4>Block Registration<\/h4>\n\n<p>The plugin uses dynamic block discovery. At runtime:\n1. Scans <code>\/blocks<\/code> directory during <code>init<\/code> action\n2. Looks for <code>build\/block.json<\/code> in each subdirectory\n3. Auto-registers all discovered blocks via <code>register_block_type()<\/code><\/p>\n\n<p>This means blocks are auto-discovered - no manual registration needed when adding new blocks.<\/p>\n\n<h4>GitHub Repository<\/h4>\n\n<ul>\n<li>Repository: https:\/\/github.com\/imagewize\/aludra<\/li>\n<li>Issues: https:\/\/github.com\/imagewize\/aludra\/issues<\/li>\n<li>Documentation: See CLAUDE.md in repository for detailed development guide<\/li>\n<\/ul>\n\n<h3>Copyright<\/h3>\n\n<p>Aludra WordPress Plugin, Copyright 2025 Jasper Frumau\nAludra is distributed under the terms of the GNU GPL v3 or later.<\/p>\n\n<p>This program is free software: you can redistribute it and\/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.<\/p>\n\n<p>This program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/aludra<\/code> directory, or install the plugin through the WordPress plugins screen directly.<\/li>\n<li>Activate the plugin through the 'Plugins' screen in WordPress.<\/li>\n<li>Blocks will be automatically available in the Gutenberg editor.<\/li>\n<li>For Mega Menu: Place inside a Navigation block to use the mega menu functionality.<\/li>\n<li>For Carousel: Add a Carousel block, then add Slide blocks inside it.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20work%20with%20any%20theme%3F\"><h3>Does this plugin work with any theme?<\/h3><\/dt>\n<dd><p>Yes. Aludra is a theme-neutral block library and works with any WordPress theme \u2014 FSE, block, or classic. It is used across the Imagewize block themes (Elayne, Aviendha), and blocks reference theme color presets with fallbacks so they render correctly everywhere.<\/p><\/dd>\n<dt id=\"how%20do%20i%20build%20the%20blocks%20from%20source%3F\"><h3>How do I build the blocks from source?<\/h3><\/dt>\n<dd><p>Each block has isolated dependencies and must be built separately:<\/p>\n\n<pre><code>`\n<\/code><\/pre>\n\n<p>cd blocks\/carousel &amp;&amp; npm install &amp;&amp; npm run build\ncd blocks\/mega-menu &amp;&amp; npm install &amp;&amp; npm run build\ncd blocks\/slide &amp;&amp; npm install &amp;&amp; npm run build\n    `<\/p>\n\n<p>For development mode with watch: <code>cd blocks\/[block-name] &amp;&amp; npm start<\/code><\/p><\/dd>\n<dt id=\"are%20the%20build%20files%20included%3F\"><h3>Are the build files included?<\/h3><\/dt>\n<dd><p>Yes, the <code>build\/<\/code> directories are committed to the repository for Packagist distribution, so users get working blocks without needing to run build commands.<\/p><\/dd>\n<dt id=\"can%20i%20customize%20the%20carousel%20settings%3F\"><h3>Can I customize the carousel settings?<\/h3><\/dt>\n<dd><p>Yes, the carousel block uses Slick Carousel which is highly customizable. You can extend the block to add additional Slick settings through the block attributes.<\/p><\/dd>\n<dt id=\"does%20the%20mega%20menu%20work%20with%20keyboard%20navigation%3F\"><h3>Does the Mega Menu work with keyboard navigation?<\/h3><\/dt>\n<dd><p>Yes, the mega menu block includes full keyboard navigation support, outside-click dismissal, and proper focus management for accessibility.<\/p><\/dd>\n<dt id=\"what%20is%20the%20wordpress%20interactivity%20api%3F\"><h3>What is the WordPress Interactivity API?<\/h3><\/dt>\n<dd><p>It's WordPress's official frontend reactivity system. The mega menu block uses it for modern, reactive user interactions without heavy JavaScript frameworks.<\/p><\/dd>\n<dt id=\"what%20blocks%20are%20included%2C%20and%20how%20are%20they%20built%3F\"><h3>What blocks are included, and how are they built?<\/h3><\/dt>\n<dd><p><strong>Mega Menu Block<\/strong>\n* Create dropdown mega menus with rich content\n* Can only be placed inside a core\/navigation block\n* Uses WordPress Interactivity API for frontend state management\n* Features click\/keyboard navigation, outside-click dismissal, and focus management\n* Supports template part integration for complex menu layouts\n* Server-side rendering for dynamic content<\/p>\n\n<p><strong>Carousel Block<\/strong>\n* Build beautiful, responsive image and content carousels\n* Powered by Slick Carousel library (1.8.1)\n* Parent block that only accepts Slide blocks as children\n* Assets loaded conditionally only when carousel is present on page\n* Fully customizable carousel settings<\/p>\n\n<p><strong>Slide Block<\/strong>\n* Individual slides for use within Carousel blocks\n* Uses InnerBlocks to accept any block content\n* Can only exist inside Carousel parent (enforced via parent constraint)\n* Flexible content options - images, text, buttons, or any WordPress blocks<\/p>\n\n<p><strong>FAQ Tabs Block<\/strong>\n* Interactive FAQ section with vertical tab navigation and dynamic content display\n* Inline-editable questions via RichText, responsive mobile accordion layout\n* Three display modes: tabs (desktop tabs \/ mobile accordion), accordion (stacked everywhere), and native (real \/ elements \u2014 no JavaScript, and browser find-in-page can expand a closed answer)\n* Parent of the FAQ Tab Answer block<\/p>\n\n<p><strong>FAQ Tab Answer Block<\/strong>\n* Individual answer child block for FAQ Tabs, with InnerBlocks for rich content\n* Editable question (tab label) and answer title\n* Only valid inside the FAQ Tabs block<\/p>\n\n<p><strong>Search Overlay Trigger Block<\/strong>\n* Search icon that opens a full-screen search overlay with smooth animations\n* Customizable overlay, search-bar, and close-button colors\n* Auto-focus, body scroll lock, and multiple close methods (X, backdrop, Escape)<\/p>\n\n<p><strong>Feature Cards Block<\/strong>\n* Responsive grid of feature highlight cards with SVG icons and a section header\n* Icons resolved via the reusable aludra\/icon binding\n* Theme color presets with fallbacks, so it renders correctly on any theme<\/p>\n\n<p><strong>Icon Grid Block<\/strong>\n* Auto-fit grid of icon + text items with an eyebrow, title, and lead\n* Icons resolved via the aludra\/icon binding\n* Theme color presets with fallbacks<\/p>\n\n<p><strong>Trust Bar Block<\/strong>\n* Inline bar of trust-signal items (icon + text) that wraps on mobile\n* Icons resolved via the aludra\/icon binding\n* Theme color presets with fallbacks<\/p>\n\n<p><strong>Pricing Tiers Block<\/strong>\n* Three-column pricing comparison table with featured tier highlighting\n* Built from InnerBlocks so every price, feature, and button is fully editable\n* Two styles: separate cards (default) or a single bordered spec sheet split by internal hairlines, with the featured tier marked by a thin accent bar<\/p>\n\n<p><strong>Testimonial Grid Block<\/strong>\n* Grid of customer testimonials with metrics\n* Automatically becomes a Slick Carousel on larger sets (4+ cards on desktop, 2+ on mobile), otherwise renders as a static grid\n* Shares the same Slick Carousel assets as the Carousel block \u2014 no duplicate library loaded<\/p>\n\n<p><strong>CTA Columns Block<\/strong>\n* Dual call-to-action cards with headings, descriptions, and buttons\n* Color variant control via the block inspector\n* Optional \"Reveal on scroll\" entrance animation, fading and sliding the section into view<\/p>\n\n<p><strong>Feature List Grid Block<\/strong>\n* Two-column grid of features with checkmarks and hover effects<\/p>\n\n<p><strong>Contact Section Block<\/strong>\n* Dark contact section with an intro, a two-column info\/details grid, and a Contact Form 7 form card\n* Contact details (email, response time, location) rendered via the aludra\/icon binding\n* Theme color presets with fallbacks, so it renders correctly on any theme<\/p>\n\n<p><strong>Hero Banner Block<\/strong>\n* Dark full-width hero with an eyebrow badge, heading, lead text, and dual CTA buttons\n* Theme color presets with fallbacks, so it renders correctly on any theme<\/p>\n\n<p><strong>Load Waterfall Block<\/strong>\n* Animated network load-time waterfall panel with an LCP marker, for hero sections that need to show off site speed\n* Site URL, badge, row labels, and the LCP label are editable via RichText; row timing\/positions are fixed to match the reference design\n* Respects prefers-reduced-motion<\/p>\n\n<p><strong>Stat Rail Block<\/strong>\n* Full-width band of big-number stats with captions, for the seam between a hero and the rest of the page\n* Equal-width columns via CSS grid, so the layout isn't locked to a fixed item count\n* Dark band by default, with a \"Light band\" style for light-ground themes \u2014 both draw their colors from the active palette\n* Built from InnerBlocks \u2014 add or remove stat items freely; parent of the Stat Item block<\/p>\n\n<p><strong>Stat Item Block<\/strong>\n* Single big-number stat with a caption, used inside Stat Rail\n* Optional \"highlight\" toggle to render the number in the theme's accent color\n* Number and caption colors set independently from the theme palette, or a custom value\n* The number can render as a heading (H1-H6) where the rail is a real section of the page, or as plain text (the default)\n* Only valid inside the Stat Rail block<\/p>\n\n<p><strong>Spine Section Block<\/strong>\n* Page section with a sticky label\/heading\/aside column on the left and its content on the right\n* Wraps any block as its content \u2014 nested Aludra section blocks have their own page shell suppressed so both columns align\n* Collapses to a single stacked column (sticky disabled) below 860px\n* Optional tinted background, and a tunable sticky offset via the --aludra-spine-top custom property<\/p>\n\n<p><strong>Key Features<\/strong><\/p>\n\n<ul>\n<li><strong>Theme Neutral<\/strong> - Works with any WordPress theme; uses theme color presets with fallbacks<\/li>\n<li><strong>Performance Optimized<\/strong> - Conditional asset loading (Slick Carousel only loads when needed)<\/li>\n<li><strong>WordPress Interactivity API<\/strong> - Modern reactive frontend for mega menu<\/li>\n<li><strong>Parent-Child Relationships<\/strong> - Carousel \u2192 Slide hierarchy enforced for better UX<\/li>\n<li><strong>Dynamic Block Discovery<\/strong> - Automatically discovers and registers all blocks at runtime<\/li>\n<li><strong>Translation Ready<\/strong> - Full internationalization support with text domain<\/li>\n<\/ul>\n\n<p><strong>Technical Highlights<\/strong><\/p>\n\n<ul>\n<li>Follows WordPress block development best practices<\/li>\n<li>Each block has isolated dependencies for independent versioning<\/li>\n<li>Block metadata in block.json is single source of truth<\/li>\n<li>Build tooling via @wordpress\/scripts (Webpack, Babel, etc.)<\/li>\n<li>Server-side rendering support (mega-menu)<\/li>\n<\/ul>\n\n<p><strong>Requirements<\/strong><\/p>\n\n<ul>\n<li>WordPress 6.9 or higher<\/li>\n<li>PHP 7.4 or higher<\/li>\n<li>Works with any WordPress theme (FSE, block, or classic)<\/li>\n<\/ul>\n\n<p><strong>Block Structure<\/strong><\/p>\n\n<p>Each block follows standard WordPress block structure:\n* <code>src\/block.json<\/code> - Block metadata and configuration\n* <code>src\/index.js<\/code> - Registration entry point\n* <code>src\/edit.js<\/code> - React editor component\n* <code>src\/save.jsx<\/code> - Frontend output markup\n* <code>src\/view.js<\/code> - Frontend interactivity (optional)\n* <code>src\/render.php<\/code> - Server-side rendering (optional)\n* <code>src\/editor.scss<\/code> - Editor-only styles\n* <code>src\/style.scss<\/code> - Frontend + editor styles<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.38.3<\/h4>\n\n<ul>\n<li>Fixed: a stray hidden file no longer ships in the zip, as WordPress.org requires<\/li>\n<li>Fixed: the translation template now covers all translatable strings, and the Dutch translation file is repaired<\/li>\n<\/ul>\n\n<h4>2.38.2<\/h4>\n\n<ul>\n<li>Added: WordPress.org directory assets \u2014 plugin icon and banners<\/li>\n<li>Changed: new fireworks logo and plugin icon, a nod to the Nightflowers of The Wheel of Time; credits updated<\/li>\n<\/ul>\n\n<h4>2.38.1<\/h4>\n\n<ul>\n<li>Removed: the SVG and WebP upload filter. Core has handled WebP since 5.8, and enabling SVG uploads site-wide without sanitization was a security risk<\/li>\n<li>Changed: the carousel patterns, team pattern and two mega menu patterns now use bundled SVG placeholder images instead of linking to external image hosts<\/li>\n<li>Fixed: the Hero Carousel and Portfolio Showcase patterns no longer trigger a block-validation (deprecation migration) notice in the editor<\/li>\n<li>Changed: the carousel patterns now live in <code>patterns\/carousel-*.php<\/code> like the other patterns; slugs and titles are unchanged<\/li>\n<\/ul>\n\n<h4>2.38.0<\/h4>\n\n<ul>\n<li>Added: store patterns for WooCommerce sites \u2014 a store hero, shop categories, newest products, a brand story, star-rated testimonials and a full store homepage. They appear in their own \"Aludra: Store\" category, and only when WooCommerce is active.<\/li>\n<li>Fixed: text contrast in dark style variations (store patterns, CTA banner button, night hero accents, stat rail highlight), and the Testimonial Grid layout with three cards on wide screens.<\/li>\n<li>Fixed: five mega menu patterns and the About page pattern no longer trigger block-validation warnings on WordPress 7.1.<\/li>\n<\/ul>\n\n<h4>2.37.5<\/h4>\n\n<ul>\n<li>Fixed: a Carousel or Testimonial Grid that came from a pattern, template or template part rather than being saved in the page itself showed as an unstyled, non-sliding list.<\/li>\n<\/ul>\n\n<h4>2.37.4<\/h4>\n\n<ul>\n<li>Fixed: a Split Section or CTA Columns block with Reveal on Scroll turned on stayed invisible when it came from a pattern, template or template part rather than being saved in the page itself.<\/li>\n<\/ul>\n\n<h4>2.37.3<\/h4>\n\n<ul>\n<li>Fixed: a Carousel in rail mode inside a Spine Section or Split Section stuck out past the edge of the screen on laptop and tablet widths, giving the whole page a horizontal scrollbar.<\/li>\n<\/ul>\n\n<h4>2.37.2<\/h4>\n\n<ul>\n<li>Fixed: Spine Section, Split Section, and Comparison Table used a different gutter token than the rest of the section blocks, leaving their content edges misaligned with neighbouring sections between roughly 768px and 1366px.<\/li>\n<\/ul>\n\n<h4>2.37.1<\/h4>\n\n<ul>\n<li>Fixed: CTA Columns block (<code>aludra\/cta-columns<\/code>) \u2014 the \"Light Gray\" background option had no matching CSS rule, so selecting it had no visible effect on the frontend.<\/li>\n<\/ul>\n\n<h4>2.37.0<\/h4>\n\n<ul>\n<li>Added: Photo Grid block (<code>aludra\/photo-grid<\/code>) \u2014 heading, follow line, and a tight square photo grid for an Instagram-style feed section. Fully static and theme-neutral: authors drop in their own photos via <code>core\/image<\/code>, no API key or live connection to maintain.<\/li>\n<li>Added: Instagram Embed block (<code>aludra\/instagram-embed<\/code>) \u2014 a live feed of a public Instagram profile via Instagram's own public embed iframe (<code>instagram.com\/username\/embed<\/code>). No developer app or API key needed, unlike the official oEmbed route Meta locked down in October 2020. The rendered markup ships only a \"Load Instagram feed\" button and a profile-link fallback; the iframe itself is only injected client-side after a visitor clicks it, so nothing loads from instagram.com \u2014 and no consent question is raised \u2014 until they opt in. This is an unofficial, undocumented endpoint: it could change or stop working without notice, so keep a plain profile link as a fallback.<\/li>\n<li>Fixed: Settings \u2192 Aludra no longer silently disables blocks introduced by an update. The screen read the saved <code>aludra_enabled<\/code> option without merging in the defaults, so a block added after you last saved that screen showed up unchecked \u2014 and because saving writes \"off\" for every box not submitted, toggling one unrelated block then disabled those blocks for real, removing them from the inserter. Block registration always read a missing entry as enabled, so only the admin screen was affected; if this caught you, just re-enable them there.<\/li>\n<\/ul>\n\n<h4>2.36.3<\/h4>\n\n<ul>\n<li>Security: Bumped the <code>@imwz\/wp-pattern-sentinel<\/code> dev dependency to 1.1.1, which pulls in a <code>js-yaml<\/code> fix for GHSA-5p4m-2wfm-xmqj, a quadratic CPU consumption (DoS) bug in <code>!!omap<\/code> YAML resolution. <code>js-yaml<\/code> is only used by sentinel's <code>--trellis<\/code> auto-discovery of <code>wordpress_sites.yml<\/code>; nothing in this plugin's own runtime is affected.<\/li>\n<\/ul>\n\n<p>Older entries are trimmed to keep this section within the 5000-character\nlimit WordPress.org enforces. The complete history is in CHANGELOG.md:\nhttps:\/\/github.com\/imagewize\/aludra\/blob\/main\/CHANGELOG.md<\/p>","raw_excerpt":"A page builder made of real blocks: 32 blocks and 42 patterns for everything between the header and the footer. Any block theme.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/srd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/382918","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/srd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/srd.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/srd.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=382918"}],"author":[{"embeddable":true,"href":"https:\/\/srd.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/rhand"}],"wp:attachment":[{"href":"https:\/\/srd.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=382918"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/srd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=382918"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/srd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=382918"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/srd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=382918"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/srd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=382918"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/srd.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=382918"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}