Главная/WordPress Fullstack/Блупринты/Gutenberg & FSE/Разработка составного блока-контейнера (InnerBlocks) с жестким шаблоном и защитой верстки (templateLock="contentOnly")
К карточкам раздела «Gutenberg & FSE»Gutenberg & FSE(ТЗ 30 из 54)
ТЗ: Разработка составного блока-контейнера (InnerBlocks) с жестким шаблоном и защитой верстки (templateLock="contentOnly")Трудозатраты~9 рабочих часов
Фриланс вилка~$405 – $675 (€360 – €630)
Оценка веб-студии~$855 – $1,440 (€810 – €1350)
ТЗ заказчика (исходный бриф):
«Дизайнеры нарисовали блок «Тарифный план»: карточка состоит из заголовка тарифа, бейджа скидки, списка преимуществ с галочками и кнопки оформления. Если дать клиенту обычную колонку, он случайно удаляет стили и двигает элементы. Нужен жесткий защищенный контейнер, где клиент может редактировать только текст и цены, не имея возможности сломать структуру карточки.»
Ключевые требования:
- •Составной блок «Тарифная карточка», состоящий из предопределенных вложенных блоков
- •Блокировка структуры: клиент не может удалить кнопку или заголовок, но может менять их текст (contentOnly)
- •Ограничение списка доступных для вставки блоков (allowedBlocks)
- •Поддержка стилей выделения карточки («Популярный тариф», акцентная рамка)
- •Сетка карточек на CSS Subgrid для идеального выравнивания кнопок покупки по нижнему краю
Ограничения проекта:
- •Использование современного API useInnerBlocksProps вместо устаревшего компонента <InnerBlocks />
- •Корректная сериализация в save() без поломки разметки валидации Gutenberg
- •0 сторонних конструкторов страниц (только нативный React редактора)
Критерии приёмки (KPI):
- 100% защита структуры: невозможность случайно разрушить макет контент-менеджером
- Идеальное выравнивание элементов карточек разной высоты через CSS Grid / Subgrid
- Легковесный чистый HTML на фронтенде
Пошаговое практическое руководство по ТЗ
Подробный разбор архитектуры, код реализации и советы эксперта по каждому этапу: