Как лучше добавить свои блоки в wordpress?
Есть некий сайт, на нём всяческие записи.
Например что-то такое.
Есть свёрстанные блоки, всякие базовые. Там картинка + текст, просто текст, вопрос-ответ аккордеоном и так далее.
Передо мной стоит задача их внедрить, чтобы можно было на любую страницу вставить любой из этих блоков (по возможности обепечить чтобы контентмейкеру это было удобно). То есть в целом, в любом случае можно это сделать через кастомные записи, через шорткоды, может плагином самописным (в тему с плагином не вникал пока).
Можно ли как-то в панель редактора добавить среди прочего кнопку, допустим "блок вопрос-ответ", ну и соответственно чтобы контентмейкеру было удобно потом заполнить этот самый блок?
Ну и в принципе вопрос, каким способом лучше реализовывать такое, если опустить вариант с кнопкой в TinyMCE(я его пока почему-то вижу не самым осуществимым)? Куда копать?
Дополнительно:
Для этого сделали блочный редактор Gutenberg
Ответы:
Используйте блочный вордпресс редактор. откажитесь от этого наследия 2000х. И тогда редакция вам скажет спасибо. Блоков в нем более чем достаточно - но всегда можно поставить блочный плагин и возможностей станет еще больше. Мучать редакцию сегодня этим старым редактором - тормозить работу.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос


Если блоки должны удобно вставляться контент-менеджером на любые страницы, лучший современный путь — сделать свои Gutenberg-блоки или паттерны блоков. Шорткоды тоже работают, но для редактора они менее удобны: человек видит не готовый блок, а текстовую конструкцию, которую легко сломать.
Практически есть три варианта:
Для FAQ, карточек, блоков «картинка + текст» я бы начал с ACF Blocks. Контент-менеджер нажимает плюс, выбирает «FAQ», заполняет вопрос/ответы в полях и видит блок в редакторе. В теме создаёте шаблон вывода, например:
acf_register_block_type([ 'name' => 'faq-block', 'title' => 'FAQ', 'render_template' => get_template_directory() . '/blocks/faq.php', 'category' => 'formatting', ]);
Если ACF Pro нет, можно сделать свой блок через
@wordpress/scripts, но это дольше. Шорткоды оставляйте для простых технических вставок, где визуальное редактирование не критично. Важный момент: не храните всю вёрстку прямо в тексте записи, иначе через полгода будет сложно менять дизайн всех блоков сразу.