{"id":335323,"date":"2026-11-10T13:13:02","date_gmt":"2026-11-10T13:13:02","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/slb-section-layout-builder\/"},"modified":"2026-11-10T13:38:23","modified_gmt":"2026-11-10T13:38:23","slug":"slb-section-layout-builder","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/slb-section-layout-builder\/","author":23198881,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.3","stable_tag":"1.0.3","tested":"7.1.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"SLB \u2014 Section Layout Builder: Section-Based Website Builder","header_author":"Rabbit Marketing House","header_description":"Schema-driven section builder for WordPress. Write code once, edit visually forever.","assets_banners_color":"203d64","last_updated":"2026-11-10 13:38:23","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/rabbitmarketinghouse.in\/slb","header_author_uri":"https:\/\/rabbitmarketinghouse.in\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":41,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.2":{"tag":"1.0.2","author":"rabbitmarketinghouse","date":"2026-11-10 13:12:50","revision":3794460},"1.0.3":{"tag":"1.0.3","author":"rabbitmarketinghouse","date":"2026-11-10 13:38:23","revision":3794497}},"upgrade_notice":{"1.0.3":"<p>Description and documentation update only. No code changes.<\/p>","1.0.0":"<p>Initial public release. No data migration required.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3794497,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3794497,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3794497,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3794497,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.2","1.0.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3794497,"resolution":"1","location":"assets","locale":"","width":1280,"height":800},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3794497,"resolution":"2","location":"assets","locale":"","width":1280,"height":800},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3794497,"resolution":"3","location":"assets","locale":"","width":1280,"height":800},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3794497,"resolution":"4","location":"assets","locale":"","width":1280,"height":2138}},"screenshots":{"1":"The full-screen editor: section list on the left, live preview on the right.","2":"Form controls generated from a section's JSON schema.","3":"Add a section from the starter library.","4":"The finished page on the front end."}},"plugin_section":[],"plugin_tags":[808,1084,291804,10452,286],"plugin_category":[45],"plugin_contributors":[269862],"plugin_business_model":[],"class_list":["post-335323","plugin","type-plugin","status-publish","hentry","plugin_tags-landing-page","plugin_tags-page-builder","plugin_tags-section-builder","plugin_tags-website-builder","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-rabbitmarketinghouse","plugin_committers-rabbitmarketinghouse"],"banners":{"banner":"https:\/\/ps.w.org\/slb-section-layout-builder\/assets\/banner-772x250.png?rev=3794497","banner_2x":"https:\/\/ps.w.org\/slb-section-layout-builder\/assets\/banner-1544x500.png?rev=3794497","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/slb-section-layout-builder\/assets\/icon-128x128.png?rev=3794497","icon_2x":"https:\/\/ps.w.org\/slb-section-layout-builder\/assets\/icon-256x256.png?rev=3794497","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/slb-section-layout-builder\/assets\/screenshot-1.png?rev=3794497","caption":"The full-screen editor: section list on the left, live preview on the right."},{"src":"https:\/\/ps.w.org\/slb-section-layout-builder\/assets\/screenshot-2.png?rev=3794497","caption":"Form controls generated from a section's JSON schema."},{"src":"https:\/\/ps.w.org\/slb-section-layout-builder\/assets\/screenshot-3.png?rev=3794497","caption":"Add a section from the starter library."},{"src":"https:\/\/ps.w.org\/slb-section-layout-builder\/assets\/screenshot-4.png?rev=3794497","caption":"The finished page on the front end."}],"raw_content":"<!--section=description-->\n<p><strong>SLB (Section Layout Builder) is a section-based website builder for WordPress and WooCommerce.<\/strong> Developers describe each page section once, as a PHP template with a JSON schema in its header. SLB turns that schema into a clean full-screen editor, so editors and clients can change text, images, colors, links and products without touching code. There is no drag-and-drop clutter, no shortcodes in your content and no lock-in.<\/p>\n\n<p><strong>Who is SLB for?<\/strong><\/p>\n\n<ul>\n<li>Agencies and freelancers who build custom WordPress and WooCommerce sites and hand them to clients.<\/li>\n<li>Theme developers who want a safe, structured editing experience instead of a free-form page builder.<\/li>\n<li>Store owners working with a developer who need to update landing pages, product sections and promotions on their own.<\/li>\n<\/ul>\n\n<p><strong>How it works<\/strong><\/p>\n\n<ol>\n<li>Write a PHP section template with a <code>@section<\/code> JSON schema in the comment header.<\/li>\n<li>Define fields (text, image, select, toggle, color, URL, range, and more).<\/li>\n<li>Editors place sections on any page through the SLB full-screen editor.<\/li>\n<li>Your theme calls <code>slbuild_render_page()<\/code> in its page template (one line). SLB resolves the field values at render time and outputs plain server-rendered HTML \u2014 no page-builder shortcodes in the database.<\/li>\n<\/ol>\n\n<p><strong>Key features<\/strong><\/p>\n\n<ul>\n<li>Schema-driven editor \u2014 form controls are generated from your JSON schema, no custom editor code needed.<\/li>\n<li>Instance-based data model \u2014 two instances of the same section on one page are fully independent.<\/li>\n<li>Repeatable blocks \u2014 define child blocks (e.g. feature cards, FAQ items) within a section.<\/li>\n<li>WooCommerce integration \u2014 built-in product picker, category picker, and product-grid sections.<\/li>\n<li>Conditional fields \u2014 show\/hide fields based on other field values using <code>visible_if<\/code> rules.<\/li>\n<li>Named presets \u2014 multiple pre-configured starting points per section via the <code>presets<\/code> array.<\/li>\n<li>Section limits \u2014 <code>max_per_page<\/code> schema key prevents duplicate unique sections.<\/li>\n<li>Preview tokens \u2014 share a 7-day preview link with clients without giving them admin access.<\/li>\n<li>Global regions \u2014 manage header and footer layouts in one place; auto-seeded on theme activation.<\/li>\n<li>Theme settings \u2014 color palette, fonts, and shop settings saved once and applied site-wide.<\/li>\n<li>Spacing controls \u2014 per-instance margin and padding via a visual spacing box.<\/li>\n<li>Field validation \u2014 min\/max length, min\/max value, required \u2014 validated in the editor and on the server.<\/li>\n<li>WooCommerce wrapper notice \u2014 editor clearly flags sections that only wrap WC output.<\/li>\n<li>No lock-in \u2014 section templates are plain PHP files in your theme. Move to another setup any time.<\/li>\n<li>No build step \u2014 plain PHP, vanilla JavaScript, no Composer, no npm required for the plugin itself.<\/li>\n<\/ul>\n\n<p><strong>Starter sections included<\/strong><\/p>\n\n<p>Marketing: Hero, CTA Banner, Features, Stats, Testimonials, Pricing, FAQ, Video, Rich Text, Logo Bar, Steps, Sale Countdown, Trust Badges, Promo Banners.<\/p>\n\n<p>WooCommerce: Product Grid, Product Tabs, Featured Product, Recently Viewed, Cart, Checkout, My Account, Order Confirmation.<\/p>\n\n<p>Content: Blog Grid, Team Grid, Categories, Text + Image, Single Product.<\/p>\n\n<p>Global: Header, Footer, Announcement Bar, Mobile Nav, Cookie Consent, Back to Top, WhatsApp Button, Theme Settings, Product Settings.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>The built-in starter sections are styled by a precompiled CSS file bundled with the plugin (<code>assets\/slbuild-tailwind.css<\/code>, generated from the starter sections with the Tailwind CSS tool, MIT licensed). It is a normal stylesheet: no script is loaded and no external connection is made. It is loaded only on pages that have SLB section data.<\/p>\n\n<p>To disable Tailwind loading entirely (e.g. if your theme already bundles Tailwind), add this to your theme's <code>functions.php<\/code>:<\/p>\n\n<pre><code>add_filter( 'slbuild_load_tailwind', '__return_false' );\n<\/code><\/pre>\n\n<p>This plugin also loads <strong>Google Fonts<\/strong> from <code>fonts.googleapis.com<\/code> when a font pairing is selected in the Global Settings \u2192 Theme Settings section. This is optional and only active when a font pairing is configured.<\/p>\n\n<p><strong>What is sent:<\/strong> A standard browser GET request for a CSS file with font definitions. No personal data is sent.<\/p>\n\n<p><strong>When it loads:<\/strong> Only when a font pairing other than \"Default\" is selected in Theme Settings.<\/p>\n\n<p><strong>Service information:<\/strong>\n* Provider: Google LLC\n* Service URL: https:\/\/fonts.google.com\n* Privacy Policy: https:\/\/policies.google.com\/privacy\n* Terms of Use: https:\/\/developers.google.com\/terms<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>slb-section-layout-builder<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<li>Navigate to <strong>SLB Editor<\/strong> in the admin menu.<\/li>\n<li>Open any page, click <strong>Edit with SLB<\/strong>, and start adding sections.<\/li>\n<li>In your theme's page template, add <code>&lt;?php if ( function_exists( 'slbuild_render_page' ) ) { slbuild_render_page(); } ?&gt;<\/code> where the page content should appear.<\/li>\n<\/ol>\n\n<p>For a pre-wired Tailwind CSS environment, install the companion <code>slb-starter<\/code> theme separately.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20is%20slb%3F\"><h3>What is SLB?<\/h3><\/dt>\n<dd><p>SLB (Section Layout Builder) is a free WordPress plugin that lets developers define page sections as PHP templates with a JSON schema, and gives editors a generated full-screen editor to fill those sections in. It supports WooCommerce and ships with starter sections for marketing pages, shops and global header and footer areas.<\/p><\/dd>\n<dt id=\"is%20slb%20a%20drag-and-drop%20page%20builder%3F\"><h3>Is SLB a drag-and-drop page builder?<\/h3><\/dt>\n<dd><p>No. SLB is a structured section builder. Pages are a vertical stack of sections, and each section exposes only the fields its developer chose. This keeps client edits safe and your design consistent.<\/p><\/dd>\n<dt id=\"is%20slb%20good%20for%20seo%20and%20page%20speed%3F\"><h3>Is SLB good for SEO and page speed?<\/h3><\/dt>\n<dd><p>SLB renders your sections on the server as plain HTML, with real headings and links, and stores no shortcodes. The plugin loads one precompiled stylesheet, and only on pages that use SLB. Page speed and SEO still depend on your theme, hosting and content.<\/p><\/dd>\n<dt id=\"does%20slb%20work%20with%20my%20existing%20theme%3F\"><h3>Does SLB work with my existing theme?<\/h3><\/dt>\n<dd><p>SLB works with any theme that calls <code>slbuild_render_page()<\/code> in its page template. This is one line of PHP, shown in the Installation section. Your theme's own header, footer and styles are untouched.<\/p><\/dd>\n<dt id=\"do%20i%20need%20woocommerce%3F\"><h3>Do I need WooCommerce?<\/h3><\/dt>\n<dd><p>No. WooCommerce sections simply do not render on sites without WooCommerce active. All other sections work on any WordPress site.<\/p><\/dd>\n<dt id=\"can%20i%20write%20my%20own%20section%20templates%3F\"><h3>Can I write my own section templates?<\/h3><\/dt>\n<dd><p>Yes \u2014 that is the intended workflow. Place PHP files with <code>@section<\/code> JSON headers in your theme's <code>sections\/<\/code> folder. SLB picks them up automatically and merges them with the starter sections (theme sections take precedence on slug collision).<\/p><\/dd>\n<dt id=\"where%20is%20my%20content%20stored%3F\"><h3>Where is my content stored?<\/h3><\/dt>\n<dd><p>Layout and field values are stored in post meta as JSON. No shortcodes, no custom tables. Section PHP files remain on the server \u2014 they are never written or modified at runtime.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20gutenberg%3F\"><h3>Does it work with Gutenberg?<\/h3><\/dt>\n<dd><p>SLB runs alongside the block editor. It opens from an <strong>Edit with SLB<\/strong> button on the page screen, and pages without SLB data keep rendering through whatever editor manages them.<\/p><\/dd>\n<dt id=\"what%20field%20types%20are%20supported%3F\"><h3>What field types are supported?<\/h3><\/dt>\n<dd><p>text, textarea, richtext (HTML), image (media library), url, video_url, color, number, range, select, toggle, page (WordPress page picker), spacing_box, and WooCommerce types: product, product_list, category, collection_source.<\/p>\n\n<p>Organizer types (no saved value): header, paragraph.<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20the%20%60slbuild_load_tailwind%60%20filter%3F\"><h3>How do I add the `slbuild_load_tailwind` filter?<\/h3><\/dt>\n<dd><p>Add this to your theme's <code>functions.php<\/code>:<\/p>\n\n<pre><code>add_filter( 'slbuild_load_tailwind', '__return_false' );\n<\/code><\/pre>\n\n<p>This is useful when your theme already bundles Tailwind CSS from a local build. Sections you write yourself can use any class your theme's own Tailwind build contains; the bundled file only covers the starter sections.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>New plugin name, short description, tags and FAQ; clearer setup instructions.<\/li>\n<li>Added plugin icon, banners and screenshots.<\/li>\n<li>Fixed placeholder icons (pricing ticks, default emoji) that showed as question marks.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Updated \"Tested up to\" to WordPress 7.1.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Replaced the bundled Tailwind Play script with a precompiled stylesheet.<\/li>\n<li>Replaced WooCommerce hook calls in the product section with direct template functions.<\/li>\n<li>REST namespace is now slbuild\/v1; colour settings are sanitized.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial WordPress.org release.<\/li>\n<li>Renamed plugin to SLB \u2014 Section Layout Builder.<\/li>\n<li>Added visible_if conditional field visibility (eq\/neq\/in operators).<\/li>\n<li>Added named presets \u2014 multiple starting points per section.<\/li>\n<li>Added max_per_page section instance limit with picker enforcement.<\/li>\n<li>Added type:header and type:paragraph organizer fields (no id required, not saved).<\/li>\n<li>Added field validation rules (min_length, max_length, min, max, required) \u2014 editor and server.<\/li>\n<li>Added character counter on text\/textarea fields with max_length.<\/li>\n<li>Added WC wrapper notice in editor for cart\/checkout\/my-account\/order-confirmation sections.<\/li>\n<li>Added connected dot indicator for fields wired to WP\/WC hooks.<\/li>\n<li>Auto-seed global regions on theme activation (after_switch_theme).<\/li>\n<li>SettingsHooks: bridge gs_theme-settings and gs_product-settings to WP\/WC hooks at runtime.<\/li>\n<li>WooCommerce template override filter (woocommerce_locate_template).<\/li>\n<li>New starter sections: Blog Grid, Team Grid, Pricing (with named presets).<\/li>\n<li>New global sections: Cookie Consent, Back to Top, Mobile Nav.<\/li>\n<li>WC sections: Cart, Checkout, My Account, Order Confirmation \u2014 all with wc_wrapper flag.<\/li>\n<\/ul>","raw_excerpt":"Section-based website builder for WordPress &amp; WooCommerce. Write a JSON schema once; editors get a clean visual editor. No lock-in.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/335323","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=335323"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/rabbitmarketinghouse"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=335323"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=335323"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=335323"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=335323"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=335323"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=335323"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}