Как вставить виджеты в сообщение?

Я разрабатываю тему WordPress, и я хотел бы добавить функцию, похожую на конструктор страницы.

Я бы просто использовал их плагин, но мне не очень нравится, как он настроен. Мой главный вопрос – это руководство о том, как заставить построитель страниц иметь кнопку с возможностью вставки виджетов в области.

Я искал и искал, но я не нашел сообщений, связанных с вставкой виджетов на страницах.

Я не так хорошо разбираюсь в JavaScript, но у меня также есть немного знаний о PHP.

Любой ответ будет оценен.

Solutions Collecting From Web of "Как вставить виджеты в сообщение?"

Создание компоновщика страниц было бы гораздо более сложным делом, чем некоторые другие варианты. Я бы предложил создать дочернюю тему из вашей текущей, а затем создать собственный шаблон (т. Е. «Tpl-custom-sidebar.php»), который имеет виджетную боковую панель. Затем вы будете управлять виджетами для этого шаблона в Appearance> Widgets или Customizer.

Вы можете создать столько или немногих из этих настраиваемых шаблонов, сколько хотите, а затем просто выбрать соответствующий шаблон из раскрывающегося меню на экране редактора.

Другой вариант, в зависимости от того, что вы пытаетесь выполнить, может заключаться в преобразовании ваших виджетов в короткие коды. Сделав это, вы можете вставить свои короткие коды непосредственно в редактор определенных сообщений, которые вы хотите затронуть. Это может быть немного легче отслеживать, потому что вы можете видеть прямо в сообщении, какие короткие коды используются.

Вы можете вставлять виджеты в сообщение по Shortcode. Просто создайте короткий код с функцией dynamic_sidebar() чтобы вставить указанные виджеты боковой панели.

 <?php add_shortcode('sidebar_widgets', function($atts, $content) { ob_start(); $atts = shortcode_atts(array( 'sidebar_id' => '', ),$atts); ?> <div> <?php dynamic_sidebar($atts['sidebar_id']); ?> </div> <?php $html = ob_get_clean(); return $html; }); 

Вы можете реализовать этот короткий код с любым плагином для построения страницы.