Intereting Posts
Фильтр инструментов загрузки WordPress 3.5+ расположение цен в woocommerce в БД Код для автоматического истечения срока действия сообщений через 30 дней Тип пользовательской публикации WordPress – показывать только определенные сообщения, которые имеют конкретный набор таксономии Скрыть визуальный редактор страницы, если выбран какой-либо шаблон? Какой плагин позволит мне перенаправить 404 ошибки на определенную страницу? несколько блогов на одном сайте Плагин wp-e-commerce – пользовательский способ оплаты Импорт продуктов в WooCommerce с помощью CSV-страницы не открывается Показывать настраиваемое поле, если оно существует, и показывать разные элементы, если это не Для автоматического входа в систему требуется обновление страницы тема и плагин устанавливают или обновляют ошибку отображения в localhost Динамические боковые панели и эхо Проблема с get_theme_mod возвращает пустое значение вместо сохраненного значения Плагин не может быть активирован, потому что он вызвал фатальную ошибку, неожиданную '['

Показать одиночный виджет

Я создал простой одноразовый виджет, чтобы администратор изменил какую-то копию на домашней странице, но виджет не показывает его содержимое.

На домашней странице у меня есть этот код: <?php the_widget('home_widget'); ?> <?php the_widget('home_widget'); ?>

И это исходный код самого виджета, поскольку он появляется в моем файле functions.php (это чистый виджет Mark Markup Джеффа Старра):

 // Clean Markup Widget @ http://perishablepress.com/clean-markup-widget/ add_action('widgets_init', create_function('', 'register_widget("home_widget");')); class home_widget extends WP_Widget { function __construct() { parent::WP_Widget('home_widget', "home page box", array('description'=>"The contents of the home page box")); } function widget($args, $instance) { extract($args); $markup = $instance['markup']; if ($markup) echo $markup; } function update($new_instance, $old_instance) { $instance = $old_instance; $instance['markup'] = $new_instance['markup']; return $instance; } function form($instance) { if ($instance) $markup = esc_attr($instance['markup']); else $markup = __('Sample markup', 'markup_widget'); ?> <p> <label for="<?php echo $this->get_field_id('markup'); ?>"><?php _e('Markup/text'); ?></label><br /> <textarea class="widefat" id="<?php echo $this->get_field_id('markup'); ?>" name="<?php echo $this->get_field_name('markup'); ?>" type="text" rows="16" cols="20" value="<?php echo $markup; ?>"><?php echo $markup; ?></textarea> </p> <?php } } 

Виджет выглядит и отлично работает в инструменте Admin, и я могу добавить текст и сохранить его и т. Д. Но на домашней странице ничего не отображается. Как я могу отобразить содержимое виджета?

Чтобы быть ясным: когда я помещаю виджет в боковую панель интерфейса администратора (потому что вам нужно), я не хочу отображать боковую панель (так как у меня есть другие виджеты там). Я просто хочу, чтобы этот одноразовый виджет отображал его содержимое на главной странице. Очень просто.

Solutions Collecting From Web of "Показать одиночный виджет"

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

Вы должны иметь возможность получить работу the_widget если вы пройдете достаточно подробностей с помощью (до) трех параметров – например:

 the_widget('home_widget',array('markup' => 'Yay')); 

Но вы не можете настроить это из бэкэнд.

Я бы предположил, что если вы собираетесь использовать виджет, создайте боковую панель для виджета.