{"id":378433,"date":"2026-10-03T12:35:18","date_gmt":"2026-10-03T12:35:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/motto-blocks\/"},"modified":"2026-10-06T14:14:05","modified_gmt":"2026-10-06T14:14:05","slug":"motto-blocks","status":"publish","type":"plugin","link":"https:\/\/ko.wordpress.org\/plugins\/motto-blocks\/","author":9444002,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.1.2","stable_tag":"0.1.2","tested":"7.1.3","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"Motto Blocks","header_author":"Motto Blocks","header_description":"Advanced blocks and a reusable styling system for modern WordPress sites.","assets_banners_color":"00ddd2","last_updated":"2026-10-06 14:14:05","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/mottoblocks.com\/","header_author_uri":"https:\/\/sebastianpothe.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":214,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.1.1":{"tag":"0.1.1","author":"sebastianpothe","date":"2026-10-03 12:35:08","revision":3726245},"0.1.2":{"tag":"0.1.2","author":"sebastianpothe","date":"2026-10-06 14:14:05","revision":3730984}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon.svg":{"filename":"icon.svg","revision":3726245,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3726245,"resolution":"1544x500","location":"assets","locale":"","width":1542,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3726245,"resolution":"772x250","location":"assets","locale":"","width":771,"height":250}},"assets_blueprints":{},"all_blocks":{"motto\/svg":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/svg","version":"0.1.0","title":"Motto SVG","category":"design","icon":"format-image","editorScript":"motto-blocks-editor","description":"Render a Lucide icon, uploaded SVG, or inline SVG markup.","attributes":{"svgAsset":{"type":"object","default":{"source":"lucide","media":{"id":0,"url":"","alt":"","title":"","width":0,"height":0,"mime":"","inlineSvg":""},"svg":{"lucideIcon":"star","lucideSvg":"","inline":""}}},"linkUrl":{"type":"string","default":""},"linkNewTab":{"type":"boolean","default":false},"linkNoFollow":{"type":"boolean","default":false}},"supports":{"html":false,"anchor":true,"align":["left","center","right","wide","full"]},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoDefaults":{"css":{"desktop":[{"name":"width","value":"80px"},{"name":"height","value":"auto"},{"name":"color"}]}}},"motto\/tabs":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/tabs","version":"0.1.0","title":"Motto Tabs","category":"design","icon":"table-col-after","editorScript":"motto-blocks-editor","description":"Tabbed content block with InnerBlocks-based tab panels.","attributes":{"activeTabId":{"type":"string","default":""},"syncUrlHash":{"type":"boolean","default":false},"mottoStyler":{"type":"object","default":{}}},"providesContext":{"motto\/tabs-activeTabId":"activeTabId","motto\/tabs-syncUrlHash":"syncUrlHash"},"supports":{"html":false,"anchor":true,"align":["wide","full"]},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoAI":{"description":"Tabbed content block. Structure: motto\/tabs \u2192 [motto\/tab-container, motto\/tab-panels]. The tab-container holds one motto\/tab-button per tab; the tab-panels holds one motto\/tab per tab. Each button and its panel share the same tabId string. Set activeTabId on motto\/tabs to the first tab's tabId.","examplePrompts":["create a tabbed section","add tabs","organize content in tabs"]}},"motto\/image":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/image","version":"0.1.0","title":"Motto Image","category":"design","icon":"format-image","editorScript":"motto-blocks-editor","description":"Image block with shared media source control and Styler support.","usesContext":["postId","termId"],"attributes":{"mediaId":{"type":"number","default":0,"role":"content"},"url":{"type":"string","default":"","source":"attribute","selector":"img","attribute":"src","role":"content"},"alt":{"type":"string","default":"","source":"attribute","selector":"img","attribute":"alt","role":"content"},"title":{"type":"string","default":"","source":"attribute","selector":"img","attribute":"title","role":"content"},"width":{"type":"number","default":0},"height":{"type":"number","default":0},"sizeSlug":{"type":"string","default":""},"sizes":{"type":"array","default":[]},"objectPosition":{"type":"string","default":"center center"},"mottoStyler":{"type":"object","default":{}},"imageDynamic":{"type":"object","default":{}},"imageParallax":{"type":"boolean","default":false},"imageParallaxOffset":{"type":"number","default":120}},"supports":{"html":false,"anchor":true,"align":["left","center","right","wide","full"]},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoAI":{"description":"Image block for displaying images. AI cannot set the url attribute \u2014 leave it empty; the user will pick the media from the editor.","examplePrompts":["add an image","insert a photo","add a full-width image"]},"mottoDefaults":{"css":{"desktop":[{"name":"aspect-ratio"},{"name":"object-fit"},{"name":"width","value":"auto"}]},"blockSelectors":[{"selector":"&{BLOCK} :is(.motto-image__media)","label":"Image Element","css":{"desktop":[]}}]}},"motto\/counter":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/counter","version":"0.1.0","title":"Motto Counter","category":"design","icon":"editor-ol","editorScript":"motto-blocks-editor","description":"Animated counter block with inline prefix, suffix, and label.","attributes":{"tagName":{"type":"string","default":"div"},"prefix":{"type":"string","default":""},"startValue":{"type":"number","default":0},"endValue":{"type":"number","default":100},"suffix":{"type":"string","default":""},"label":{"type":"string","default":""},"showLabel":{"type":"boolean","default":true},"labelPosition":{"type":"string","default":"bottom"},"duration":{"type":"number","default":2},"delay":{"type":"number","default":0},"easing":{"type":"string","default":"power2.out"},"step":{"type":"number","default":1},"replayMode":{"type":"string","default":"once"},"respectReducedMotion":{"type":"boolean","default":true},"thousandsSeparatorMode":{"type":"string","default":"locale"},"thousandsSeparator":{"type":"string","default":""},"mottoStyler":{"type":"object","default":{}}},"supports":{"html":false,"anchor":true,"align":["wide","full"]},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoDefaults":{"css":{},"blockSelectors":[{"selector":"&{BLOCK} :is(.motto-counter__content)","label":"Counter row","css":{"desktop":[{"name":"display","value":"inline-flex"},{"name":"align-items","value":"baseline"},{"name":"gap","value":"0.15em"}]}},{"selector":"&{BLOCK} :is(.motto-counter__prefix)","label":"Prefix","css":{"desktop":[{"name":"font-size"},{"name":"color"}]}},{"selector":"&{BLOCK} :is(.motto-counter__value)","label":"Value","css":{"desktop":[{"name":"font-size"},{"name":"font-weight"},{"name":"line-height"},{"name":"min-width"}]}},{"selector":"&{BLOCK} :is(.motto-counter__suffix)","label":"Suffix","css":{"desktop":[{"name":"font-size"},{"name":"color"}]}},{"selector":"&{BLOCK} :is(.motto-counter__label)","label":"Label","css":{"desktop":[{"name":"font-size"},{"name":"color"},{"name":"margin-top","value":"0.35em"}]}},{"selector":"&{BLOCK}.is-counting :is(.motto-counter__value)","label":"Counting state","css":{"desktop":[{"name":"opacity"}]}},{"selector":"&{BLOCK}.is-complete :is(.motto-counter__value)","label":"Complete state","css":{"desktop":[{"name":"opacity"}]}}]}},"motto\/list":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/list","version":"0.1.0","title":"Motto List","category":"text","icon":"editor-ul","editorScript":"motto-blocks-editor","description":"List block with configurable default, image, icon, SVG, counter, or no bullets.","providesContext":{"motto\/bulletOptions":"bulletOptions"},"attributes":{"bulletOptions":{"type":"object","default":{"type":"icon","image":{"id":0,"url":""},"svg":{"source":"lucide","inline":"","lucideIcon":"star"},"counter":{"style":"decimal","start":1}}},"mottoStyler":{"type":"object","default":{}}},"supports":{"html":false,"anchor":true,"align":["wide","full"]},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoDefaults":{"css":{"desktop":[{"name":"--bullet-size","value":"30px"},{"name":"--bullet-color","value":"blue"}]},"blockSelectors":[{"selector":"&{BLOCK} :is(.motto-list-item)","label":"List Items","description":"","css":{"desktop":[{"name":"padding"}],"tablet":[],"landscapePhone":[],"phone":[]}}]}},"motto\/maps":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/maps","version":"0.1.1","title":"Motto Maps","category":"design","icon":"location-alt","editorScript":"motto-blocks-editor","description":"Google Maps block with customizable pins.","attributes":{"height":{"type":"number","default":420},"centerLat":{"type":"number","default":40.7128},"centerLng":{"type":"number","default":-74.006},"zoom":{"type":"number","default":12},"mapType":{"type":"string","default":"roadmap"},"controls":{"type":"object","default":{"zoomControl":true,"fullscreenControl":true,"streetViewControl":false,"mapTypeControl":false}},"pins":{"type":"array","default":[]}},"supports":{"html":false,"anchor":true,"align":["wide","full"]},"mottoBaseLayout":"flow","textdomain":"motto-blocks"},"motto\/classic-menu":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/classic-menu","version":"0.1.0","title":"Motto Classic Menu","category":"design","icon":"menu","editorScript":"motto-blocks-editor","description":"Classic menu block rendered from WordPress menus.","attributes":{"useLocation":{"type":"boolean","default":false},"menuSlug":{"type":"string","default":""},"menuLocation":{"type":"string","default":""},"orientation":{"type":"string","default":"horizontal"},"submenuPosition":{"type":"string","default":"floating"},"toggleEvent":{"type":"string","default":"rollover"},"mottoStyler":{"type":"object","default":{}}},"supports":{"html":false,"anchor":true,"align":["wide","full"]},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoDefaults":{"css":{"desktop":[{"name":"display","value":"flex"},{"name":"justify-content"}]},"blockSelectors":[{"selector":"&{BLOCK} :is(.motto-classic-menu__container)","label":"Menu Element","description":"","css":{"desktop":[{"name":"gap","value":"0.5em"},{"name":"display","value":"flex"},{"name":"flex-direction","value":"row"}]}},{"selector":"&{BLOCK} :is(.motto-classic-menu__item)","label":"Menu Items","description":"","css":{"desktop":[{"name":"position","value":"relative"}]}},{"selector":"&{BLOCK} :is(.motto-classic-menu__item-content)","label":"Menu Links","description":"","css":{"desktop":[{"name":"padding","value":"0.5em"},{"name":"text-decoration","value":"none"}]}},{"selector":"&{BLOCK} :is(.motto-classic-menu__submenu-container)","label":"Submenu Wrapper","description":"","css":{"desktop":[{"name":"min-width","value":"200px"}]}},{"selector":"&{BLOCK} :is(.motto-classic-menu__submenu)","label":"Submenu","description":"","css":{"desktop":[{"name":"background-color"},{"name":"padding","value":"0.5em"}]}},{"selector":"&{BLOCK} :is(.motto-classic-menu__submenu .motto-classic-menu__item-content)","label":"Submenu Links","description":"","css":{"desktop":[]}},{"selector":"&{BLOCK} :is(.motto-classic-menu__submenu-icon)","label":"Submenu Toggle","description":"","css":{"desktop":[{"name":"cursor","value":"pointer"}]}}]}},"motto\/container":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/container","version":"0.1.0","title":"Motto Container","category":"design","icon":"screenoptions","editorScript":"motto-blocks-editor","description":"Flexible container block for grouping content.","usesContext":["postId","termId"],"attributes":{"tagName":{"type":"string","default":"div"},"backgroundImageUrl":{"type":"string","default":""},"backgroundImageId":{"type":"number","default":0},"backgroundImageEnabled":{"type":"boolean","default":false},"backgroundPosition":{"type":"string","default":"center center"},"backgroundFocalPoint":{"type":"object","default":{"x":0.5,"y":0.5}},"backgroundSize":{"type":"string","default":"cover"},"backgroundRepeat":{"type":"string","default":"no-repeat"},"backgroundAttachment":{"type":"string","default":"scroll"},"backgroundParallax":{"type":"boolean","default":false},"backgroundParallaxOffset":{"type":"number","default":120},"overlayColor":{"type":"string","default":""},"overlayEnabled":{"type":"boolean","default":false},"overlayOpacity":{"type":"number","default":0.4},"overlayStyle":{"type":"string","default":"color"},"overlayGradient":{"type":"string","default":""},"linkContainerEnabled":{"type":"boolean","default":false},"linkContainerUrl":{"type":"string","source":"attribute","selector":".motto-container__link-overlay","attribute":"href","role":"content","default":""},"linkContainerNewTab":{"type":"boolean","role":"content","default":false},"linkContainerNoFollow":{"type":"boolean","role":"content","default":false},"linkDynamic":{"type":"object","default":{}},"backgroundDynamic":{"type":"object","default":{}}},"supports":{"html":false,"anchor":true,"align":["wide","full"],"layout":true},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoAI":{"description":"Primary layout container. Use for sections, rows, cards, column wrappers, and any structural wrapper. To create a multi-column row: set display:flex + flex-wrap:wrap + gap on the outer container; set flex:1 1 <min-width> on each inner container. Supports mottoStyler for all CSS. Accepts any inner blocks.","examplePrompts":["create a section","add a hero area","create a card","add a row with background","create columns","add a 3-column layout"],"features":{"overlay":"Set overlayEnabled:true to add a color or gradient overlay. overlayColor (CSS color), overlayOpacity (0-1, default 0.4), overlayStyle ('color' or 'gradient'), overlayGradient (CSS gradient string).","parallax":"Set backgroundParallax:true to enable parallax scroll on the background image. backgroundParallaxOffset controls depth (number, default 120).","backgroundImage":"backgroundImageUrl and backgroundImageEnabled control the background image. AI cannot pick media URLs \u2014 only set these in modify mode when a URL is already present.","linkContainer":"Set linkContainerEnabled:true to make the entire container a link. linkContainerUrl (string), linkContainerNewTab (bool), linkContainerNoFollow (bool)."}},"mottoDefaults":{"blockSelectors":[{"selector":"&{BLOCK} a","label":"Links","css":{"desktop":[{"name":"color"}]}},{"selector":"&{BLOCK} a:is(:hover,:focus)","label":"Links Hover \/ Focus","css":{"desktop":[{"name":"color"}]}}]}},"motto\/accordion":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/accordion","version":"0.1.0","title":"Motto Accordion","category":"design","icon":"menu-alt3","editorScript":"motto-blocks-editor","description":"Accordion block with item-based toggle panels.","providesContext":{"motto\/accordion-closeOtherItems":"closeOtherItems"},"attributes":{"closeOtherItems":{"type":"boolean","default":false},"mottoStyler":{"type":"object","default":{}}},"supports":{"html":false,"anchor":true,"align":["wide","full"]},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoAI":{"description":"Accordion block for FAQ or toggle content. Add motto\/accordion-item blocks inside it. closeOtherItems (bool): if true, opening one item automatically closes the others.","examplePrompts":["create a FAQ section","add an accordion","create collapsible content"]},"mottoDefaults":{"css":{"desktop":[{"name":"display","value":"flex"},{"name":"flex-direction","value":"column"},{"name":"gap","value":"1em"}]},"blockSelectors":[{"selector":"&{BLOCK} :is(.motto-accordion-item__trigger)","label":"Accordion trigger","css":{"desktop":[{"name":"padding","value":"0.75em 1em"},{"name":"border-bottom","value":"solid 1px #eee"},{"name":"color"},{"name":"font-size"}]}},{"selector":"&{BLOCK} :is(.is-open .motto-accordion-item__trigger)","label":"Accordion trigger (open)","css":{"desktop":[{"name":"border-color"}]}},{"selector":"&{BLOCK} :is(.motto-accordion-item__panel-inner)","label":"Accordion panel content","css":{"desktop":[{"name":"padding","value":"0 1em 1em"},{"name":"color"}]}}]}},"motto\/slider":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/slider","version":"0.1.1","title":"Motto Slider","category":"design","icon":"images-alt2","editorScript":"motto-blocks-editor","description":"Slider block with configurable Swiper options.","attributes":{"slidesPerView":{"type":"number","default":1},"slidesPerViewAuto":{"type":"boolean","default":false},"spaceBetween":{"type":"number","default":16},"responsiveOptions":{"type":"object","default":{}},"swiperBreakpoints":{"type":"object","default":{}},"speed":{"type":"number","default":300},"loop":{"type":"boolean","default":false},"centeredSlides":{"type":"boolean","default":false},"freeMode":{"type":"boolean","default":false},"freeModeSticky":{"type":"boolean","default":false},"mousewheelEnabled":{"type":"boolean","default":false},"mousewheelForceToAxis":{"type":"boolean","default":true},"mousewheelReleaseOnEdges":{"type":"boolean","default":true},"mousewheelSensitivity":{"type":"number","default":1},"autoplayEnabled":{"type":"boolean","default":false},"autoplayDelay":{"type":"number","default":3000},"navigation":{"type":"boolean","default":true},"navigationIcons":{"type":"object","default":{"prev":{"type":"default","image":{"id":0,"url":""},"svg":{"source":"inline","inline":"","lucideIcon":"arrow-left"}},"next":{"type":"default","image":{"id":0,"url":""},"svg":{"source":"inline","inline":"","lucideIcon":"arrow-right"}}}},"pagination":{"type":"boolean","default":true},"paginationClickable":{"type":"boolean","default":true},"scrollbar":{"type":"boolean","default":false},"transitionEffect":{"type":"string","default":"translate"},"mottoStyler":{"type":"object","default":{}}},"supports":{"html":false,"anchor":true,"align":["wide","full"]},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoAI":{"description":"Slider\/carousel block powered by Swiper. Add motto\/slide blocks inside it.","examplePrompts":["create a carousel","add a slider","create an image slideshow"],"features":{"slides":"slidesPerView (number, default 1) or set slidesPerViewAuto:true to size by content. spaceBetween (number px, default 16). centeredSlides (bool).","loop":"loop (bool): enables continuous loop mode.","mousewheel":"mousewheelEnabled (bool): enables mouse wheel control. mousewheelForceToAxis (bool, default true), mousewheelReleaseOnEdges (bool, default true), mousewheelSensitivity (number, default 1).","autoplay":"autoplayEnabled (bool): enables autoplay. autoplayDelay (number ms, default 3000).","navigation":"navigation (bool, default true): shows prev\/next arrow buttons.","pagination":"pagination (bool, default true): shows dot indicators. paginationClickable (bool, default true).","effect":"transitionEffect (string): 'translate' (default), 'fade', 'cube', 'flip', 'cards'.","speed":"speed (number ms, default 300): transition duration."}},"mottoDefaults":{"presetSlug":"standard-motto-slider"}},"motto\/buttons":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/buttons","version":"0.1.0","title":"Motto Buttons","category":"design","icon":"button","editorScript":"motto-blocks-editor","description":"Buttons container block that only accepts Motto Button items.","attributes":{"mottoStyler":{"type":"object","default":{}}},"supports":{"html":false,"anchor":true,"align":["left","center","right","wide","full"]},"mottoBaseLayout":"flex","textdomain":"motto-blocks","mottoAI":{"description":"Button group container. Must contain motto\/button inner blocks. Use for CTA groups.","examplePrompts":["add CTA buttons","create a button group","add two buttons side by side"]},"mottoDefaults":{"css":{"desktop":[{"name":"display","value":"flex"},{"name":"flex-direction"},{"name":"flex-wrap"},{"name":"justify-content","value":""}]}}},"motto\/slide":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/slide","version":"0.1.0","title":"Slide","category":"design","icon":"slides","editorScript":"motto-blocks-editor","description":"Single slide item for Motto Slider.","parent":["motto\/slider"],"supports":{"html":false,"anchor":true,"reusable":false},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoAI":{"description":"Single slide inside a motto\/slider. Accepts any inner blocks as slide content (images, headings, containers, etc.).","examplePrompts":["add a slide"]}},"motto\/tab-button":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/tab-button","version":"0.1.0","title":"Tab Button","category":"design","icon":"button","editorScript":"motto-blocks-editor","description":"Single navigation button for Motto Tabs.","parent":["motto\/tab-container"],"usesContext":["motto\/tabs-activeTabId","motto\/tabs-syncUrlHash"],"attributes":{"tabId":{"type":"string","default":""},"urlSlug":{"type":"string","default":""}},"supports":{"html":false,"anchor":true,"reusable":false},"mottoBaseLayout":"inline-flex","textdomain":"motto-blocks","mottoAI":{"description":"Navigation button inside motto\/tab-container. Set tabId to a unique string shared with its corresponding motto\/tab panel. Content is a core\/paragraph text child plus an optional motto\/svg icon child, in either order.","supportsIcon":true,"examplePrompts":[]}},"motto\/tab-container":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/tab-container","version":"0.1.0","title":"Tab Container","category":"design","icon":"table-row-before","editorScript":"motto-blocks-editor","description":"Navigation container for Motto Tabs.","parent":["motto\/tabs"],"usesContext":["motto\/tabs-activeTabId"],"supports":{"html":false,"anchor":true,"reusable":false,"inserter":false},"mottoDefaults":{"css":{"desktop":[{"name":"display","value":"flex"},{"name":"gap","value":"0.5em"},{"name":"padding"}]},"blockSelectors":[{"selector":"&{BLOCK} :is(.motto-tabs__nav-item)","label":"Tab button","css":{"desktop":[{"name":"padding"},{"name":"background-color","value":"#eee"},{"name":"color"},{"name":"font-size"},{"name":"border-radius"},{"name":"cursor","value":"pointer"}]}},{"selector":"&{BLOCK} :is(.motto-tabs__nav-item.is-active)","label":"Tab button (active)","css":{"desktop":[{"name":"background-color","value":"black"},{"name":"color","value":"white"},{"name":"font-weight"}]}}]},"mottoBaseLayout":"flex","textdomain":"motto-blocks","mottoAI":{"description":"Navigation bar inside motto\/tabs. Contains one motto\/tab-button per tab. Always the first child of motto\/tabs, paired with a motto\/tab-panels sibling.","examplePrompts":[]}},"motto\/accordion-panel":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/accordion-panel","version":"0.1.0","title":"Accordion Panel","category":"design","icon":"excerpt-view","editorScript":"motto-blocks-editor","description":"Collapsible content panel for a single Motto Accordion item.","parent":["motto\/accordion-item"],"usesContext":["motto\/accordion-item-itemId","motto\/accordion-item-isOpen"],"attributes":{"itemId":{"type":"string","default":""},"isOpen":{"type":"boolean","default":false}},"supports":{"html":false,"anchor":true,"inserter":false,"reusable":false},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoAI":{"description":"Content panel inside motto\/accordion-item. Accepts any inner blocks as panel content.","examplePrompts":[]}},"motto\/list-item":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/list-item","version":"0.1.0","title":"List Item","category":"text","icon":"marker","editorScript":"motto-blocks-editor","description":"List item with optional bullet override.","parent":["motto\/list"],"allowedBlocks":["motto\/list"],"usesContext":["motto\/bulletOptions"],"attributes":{"content":{"type":"rich-text","source":"rich-text","selector":".motto-list-item__text","role":"content"},"overrideBullet":{"type":"boolean","default":false},"bulletOptions":{"type":"object","default":{"type":"icon","image":{"id":0,"url":""},"svg":{"source":"lucide","inline":"","lucideIcon":"star"},"counter":{"style":"decimal","start":1}}}},"supports":{"html":false,"anchor":true,"reusable":false,"splitting":true},"mottoBaseLayout":"flex","textdomain":"motto-blocks"},"motto\/tab":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/tab","version":"0.1.0","title":"Tab Panel","category":"design","icon":"table-col-after","editorScript":"motto-blocks-editor","description":"Single content panel for Motto Tabs.","parent":["motto\/tab-panels"],"usesContext":["motto\/tabs-activeTabId"],"attributes":{"tabId":{"type":"string","default":""}},"supports":{"html":false,"anchor":true,"reusable":false},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoAI":{"description":"Content panel inside motto\/tab-panels. Set tabId to the same unique string as its corresponding motto\/tab-button. Accepts any inner blocks as panel content.","examplePrompts":[]}},"motto\/accordion-trigger":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/accordion-trigger","version":"0.1.0","title":"Accordion Trigger","category":"design","icon":"button","editorScript":"motto-blocks-editor","description":"Trigger button for a single Motto Accordion item.","parent":["motto\/accordion-item"],"usesContext":["motto\/accordion-item-itemId","motto\/accordion-item-isOpen","motto\/accordion-closeOtherItems"],"attributes":{"itemId":{"type":"string","default":""},"isOpen":{"type":"boolean","default":false}},"supports":{"html":false,"anchor":true,"inserter":false,"reusable":false},"mottoBaseLayout":"flex","textdomain":"motto-blocks","mottoAI":{"description":"Trigger button inside motto\/accordion-item. Content is a core\/paragraph text child plus an optional motto\/svg icon child, in either order.","examplePrompts":[]}},"motto\/accordion-item":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/accordion-item","version":"0.1.0","title":"Accordion Item","category":"design","icon":"excerpt-view","editorScript":"motto-blocks-editor","description":"Single item for Motto Accordion.","parent":["motto\/accordion"],"usesContext":["motto\/accordion-closeOtherItems"],"providesContext":{"motto\/accordion-item-itemId":"itemId","motto\/accordion-item-isOpen":"isOpen"},"attributes":{"itemId":{"type":"string","default":""},"isOpen":{"type":"boolean","default":false}},"supports":{"html":false,"anchor":true,"reusable":false},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoAI":{"description":"Single accordion item. Must be placed inside motto\/accordion. Structure: motto\/accordion-item \u2192 [motto\/accordion-trigger, motto\/accordion-panel]. isOpen (bool): starts the panel open by default. Set the trigger's text on its inner motto\/accordion-trigger block.","examplePrompts":["add an accordion item","add a FAQ item"]},"mottoDefaults":{"css":{"desktop":[{"name":"border-color"},{"name":"border-radius"},{"name":"background-color"}]}}},"motto\/tab-panels":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/tab-panels","version":"0.1.0","title":"Tab Panels","category":"design","icon":"screenoptions","editorScript":"motto-blocks-editor","description":"Panels container for Motto Tabs.","parent":["motto\/tabs"],"usesContext":["motto\/tabs-activeTabId"],"supports":{"html":false,"anchor":true,"reusable":false,"inserter":false},"mottoDefaults":{"blockSelectors":[{"selector":"&{BLOCK} :is(.motto-tab)","label":"Tab panel","css":{"desktop":[{"name":"padding","value":".75em"},{"name":"background-color"},{"name":"border","value":"solid 1px #eee"}]}}]},"mottoBaseLayout":"flow","textdomain":"motto-blocks","mottoAI":{"description":"Content panels container inside motto\/tabs. Contains one motto\/tab per tab. Always the second child of motto\/tabs, paired with a motto\/tab-container sibling.","examplePrompts":[]}},"motto\/button":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"motto\/button","version":"0.1.0","title":"Button","category":"design","icon":"button","editorScript":"motto-blocks-editor","description":"Button block with optional image, Lucide, or inline SVG icon.","parent":["motto\/buttons"],"attributes":{"text":{"type":"string","source":"html","selector":".motto-button__text"},"url":{"type":"string","source":"attribute","selector":".motto-button","attribute":"href"},"linkTarget":{"type":"string","source":"attribute","selector":".motto-button","attribute":"target"},"rel":{"type":"string","source":"attribute","selector":".motto-button","attribute":"rel"},"iconPosition":{"type":"string","default":"left"},"iconOptions":{"type":"object","default":{"type":"none","image":{"id":0,"url":""},"svg":{"source":"inline","inline":"","lucideIcon":"check"}}},"noFollow":{"type":"boolean","default":false},"linkDynamic":{"type":"object","default":{}},"mottoStyler":{"type":"object","default":{}}},"supports":{"html":false,"anchor":true,"align":["left","center","right","wide","full"]},"mottoBaseLayout":"inline-flex","textdomain":"motto-blocks","mottoAI":{"description":"Individual button. Must be placed inside motto\/buttons. Key attributes: text (string, button label), url (string, href), linkTarget ('_blank' for new tab), noFollow (bool). Supports optional icon.","supportsIcon":true,"examplePrompts":["add a button","create a call to action button"]},"mottoDefaults":{"presetSlug":"motto-button"}}},"tagged_versions":["0.1.1","0.1.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3726245,"resolution":"1","location":"assets","locale":"","width":3099,"height":1676},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3726245,"resolution":"2","location":"assets","locale":"","width":3099,"height":1676},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3726245,"resolution":"3","location":"assets","locale":"","width":3099,"height":1676},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3726245,"resolution":"4","location":"assets","locale":"","width":3099,"height":1676}},"screenshots":{"1":"Motto blocks in the block inserter.","2":"The Motto Container block with the Styler panel open, editing a card component's styles live.","3":"Style Presets \u2014 one-click layout, typography, and appearance presets for a block.","4":"The Blocks admin tab, for enabling or disabling individual blocks site-wide."}},"plugin_section":[],"plugin_tags":[4121,215460,148076,606,2304],"plugin_category":[],"plugin_contributors":[284193],"plugin_business_model":[],"class_list":["post-378433","plugin","type-plugin","status-publish","hentry","plugin_tags-blocks","plugin_tags-design-system","plugin_tags-gutenberg","plugin_tags-responsive","plugin_tags-styling","plugin_contributors-sebastianpothe","plugin_committers-sebastianpothe"],"banners":{"banner":"https:\/\/ps.w.org\/motto-blocks\/assets\/banner-772x250.png?rev=3726245","banner_2x":"https:\/\/ps.w.org\/motto-blocks\/assets\/banner-1544x500.png?rev=3726245","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/motto-blocks\/assets\/icon.svg?rev=3726245","icon":"https:\/\/ps.w.org\/motto-blocks\/assets\/icon.svg?rev=3726245","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/motto-blocks\/assets\/screenshot-1.png?rev=3726245","caption":"Motto blocks in the block inserter."},{"src":"https:\/\/ps.w.org\/motto-blocks\/assets\/screenshot-2.png?rev=3726245","caption":"The Motto Container block with the Styler panel open, editing a card component's styles live."},{"src":"https:\/\/ps.w.org\/motto-blocks\/assets\/screenshot-3.png?rev=3726245","caption":"Style Presets \u2014 one-click layout, typography, and appearance presets for a block."},{"src":"https:\/\/ps.w.org\/motto-blocks\/assets\/screenshot-4.png?rev=3726245","caption":"The Blocks admin tab, for enabling or disabling individual blocks site-wide."}],"raw_content":"<!--section=description-->\n<p>Tagline: Advanced blocks. Reusable styling.<\/p>\n\n<p>Motto Blocks gives you advanced blocks and a reusable, responsive styling system for modern WordPress sites, making it easier to build consistent layouts, manage shared styles, and keep design decisions scalable.<\/p>\n\n<h3>Development<\/h3>\n\n<p>The human-readable source used to build this plugin's compiled\/minified assets (<code>build\/motto-blocks.js<\/code> and the CSS under <code>assets\/css\/<\/code>) is publicly available at <a href=\"https:\/\/github.com\/mottoblocks\/motto-blocks\">github.com\/mottoblocks\/motto-blocks<\/a>.<\/p>\n\n<h3>Third-Party Libraries<\/h3>\n\n<p>Motto Blocks bundles <a href=\"https:\/\/swiperjs.com\/\">Swiper<\/a> (MIT license) for the Motto Slider block, distributed as a minified build; the unminified source is available from the <a href=\"https:\/\/github.com\/nolimits4web\/swiper\">Swiper GitHub repository<\/a>. It also bundles the <a href=\"https:\/\/lucide.dev\/\">Lucide<\/a> icon set (ISC license) as local SVG files for the Motto Maps block's pin icon picker, from the <a href=\"https:\/\/github.com\/lucide-icons\/lucide\">lucide-static<\/a> package. See <code>THIRD_PARTY_LICENSES.txt<\/code> in the plugin package for full license texts.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to the Google Maps Platform to display maps in the Motto Maps block.<\/p>\n\n<p>It only loads when a page contains a Motto Maps block, and only after you configure a Google Maps API key in Settings \u2192 Motto Blocks \u2192 API. The plugin sends the site administrator's own API key to Google to load the Maps JavaScript API in the visitor's browser; no visitor-provided personal data is sent by the plugin itself, though loading any third-party script exposes the visitor's IP address and browser details to that service, as is standard for any embedded map.<\/p>\n\n<p>This service is provided by Google: <a href=\"https:\/\/cloud.google.com\/maps-platform\/terms\">Google Maps Platform Terms of Service<\/a>, <a href=\"https:\/\/policies.google.com\/privacy\">Google Privacy Policy<\/a>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to the <code>\/wp-content\/plugins\/motto-blocks<\/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>Use the block inserter to add blocks, or open block settings where the Styler integrates with supported blocks.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20wordpress%20version%20do%20i%20need%3F\"><h3>What WordPress version do I need?<\/h3><\/dt>\n<dd><p>Motto Blocks requires WordPress 6.5 or higher and PHP 7.4 or higher.<\/p><\/dd>\n<dt id=\"where%20can%20i%20get%20help%20or%20documentation%3F\"><h3>Where can I get help or documentation?<\/h3><\/dt>\n<dd><p>Visit <a href=\"https:\/\/mottoblocks.com\/\">mottoblocks.com<\/a> for product information and support channels.<\/p><\/dd>\n<dt id=\"is%20there%20a%20pro%20version%3F\"><h3>Is there a Pro version?<\/h3><\/dt>\n<dd><p>A Pro add-on with additional blocks and features is planned, but not available yet. The free plugin is fully usable on its own. Follow <a href=\"https:\/\/mottoblocks.com\/\">mottoblocks.com<\/a> for updates.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.1.2<\/h4>\n\n<ul>\n<li><strong>Directory listing:<\/strong> declare the editor script handle in each block's <code>block.json<\/code> so the WordPress.org Plugin Directory can index all blocks.<\/li>\n<\/ul>\n\n<h4>0.1.1<\/h4>\n\n<ul>\n<li><strong>Styler:<\/strong> responsive styling workflow in the block editor for supported surfaces (classes, design tokens, and related controls).<\/li>\n<li><strong>Layout:<\/strong> Motto Container.<\/li>\n<li><strong>Actions:<\/strong> Motto Button, Motto Buttons.<\/li>\n<li><strong>Media:<\/strong> Motto Image, Motto SVG.<\/li>\n<li><strong>Lists:<\/strong> Motto List and Motto List Item.<\/li>\n<li><strong>Carousel:<\/strong> Motto Slider and Motto Slide.<\/li>\n<li><strong>Tabs:<\/strong> Motto Tabs, Tab Container, Tab Panels, Tab Panel, and Tab Button.<\/li>\n<li><strong>Accordion:<\/strong> Motto Accordion and Motto Accordion Item.<\/li>\n<li><strong>Navigation:<\/strong> Motto Classic Menu.<\/li>\n<li><strong>Maps:<\/strong> Motto Maps.<\/li>\n<li><strong>Utility:<\/strong> Motto Counter.<\/li>\n<li>First release packaged for the WordPress.org plugin directory.<\/li>\n<\/ul>","raw_excerpt":"Advanced blocks and a reusable styling system for modern WordPress sites.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ko.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/378433","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ko.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ko.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ko.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=378433"}],"author":[{"embeddable":true,"href":"https:\/\/ko.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/sebastianpothe"}],"wp:attachment":[{"href":"https:\/\/ko.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=378433"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ko.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=378433"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ko.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=378433"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ko.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=378433"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ko.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=378433"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ko.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=378433"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}