Ручное отображение виджета

В настоящее время у меня есть виджет, который нужно вручную отображать на первой странице. Остальные страницы отображаются на боковой панели виджета (это выполняется с помощью «Виджет Logic»), но на первой странице мне нужно отобразить ее в другой области. Я попытался использовать the_widget (), но проблема в том, что он не отображает ни одну из сохраненных данных для виджета. Как я могу вручную отобразить виджет и получить мои сохраненные данные для отображения виджета?

РЕШЕНИЕ: Это код, который в конечном итоге решил мою проблему. В основном вы можете получить данные виджетов, используя get_option. Я сделал var_dump результата и нашел массив, который я хотел, и вернул его в функцию_видец. Я думаю, единственная проблема здесь в том, что если пользователь когда-либо удалит виджет и переделает его, ключ массива, скорее всего, изменится. Но сейчас это работает.

if(function_exists('the_widget')) { $instance = get_option( 'widget_backspikewidget' ); the_widget('BackSpikeWidget', $instance[2]); } 

Solutions Collecting From Web of "Ручное отображение виджета"

Мне нравится ответ, который вы нашли, но я подумал, что буду придерживаться другого.

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

У этого есть немного более высокие накладные расходы, но становится намного легче поддерживать для того, кто не кодирует.