the_widget() WP 2.8.0
Выводит указанный виджет за пределами сайдбара. Можно использовать в любом месте шаблона.
Хуки из функции
Возвращает
Ничего. Выводит на экран HTML код виджета.
Использование
the_widget( $widget, $instance, $args );
- $widget(строка) (обязательный)
- Название PHP класса, который отвечает за виджет. см.
/wp-includes/default-widgets.php
. Список ниже... - $instance(массив/строка)
параметры виджета (настройки экземпляра класса).
Можно указать: массив
array('dropdown'=>'1')
или строку запроса: 'dropdown=1&count=1'.Какие параметры у каждого виджета смотрите ниже. Или зайдите в админку WP Внешний вид > Виджеты, активируйте нужный виджет и посмотрите какие у него есть параметры. Чтобы узнать конкретное название параметра, смотрите последнее значение атрибута
name
у поля виджета, например у виджета «облако меток» поле «заголовок» равноname="widget-tag_cloud[2][title]"
- значит настройка будет - title.По умолчанию:
array()
- $args(массив)
Массив параметров для изменения отображения виджета. Может быть:
-
before_widget (строка)
HTML который будет добавлен перед кодом виджета.
По умолчанию:<div class="widget %s">
, где%s
class виджета. -
after_widget (строка)
HTML который будет добавлен после кода виджета.
По умолчанию:</div>
-
before_title (строка)
HTML который будет добавлен перед кодом заголовка виджета.
По умолчанию:<h2 class="widgettitle">
- after_title (строка)
HTML который будет добавлен после кода заголовка виджета.
По умолчанию:</h2>
По умолчанию:
array()
-
Базовые виджеты WordPress
-
WP_Widget_Archives
– архивы -
WP_Widget_Calendar
– календарь -
WP_Widget_Categories
– рубрики -
WP_Widget_Meta
– вход/выход и мета данные -
WP_Widget_Pages
– постоянные страницы -
WP_Widget_Recent_Comments
– последние комментарии -
WP_Widget_Recent_Posts
– последние записи -
WP_Widget_RSS
– RSS -
WP_Widget_Search
– поиск -
WP_Widget_Tag_Cloud
– облако меток -
WP_Widget_Text
– произвольные текст -
WP_Nav_Menu_Widget
– меню - Произвольный виджет
WP_Widget_Archives
– архивы
the_widget( 'WP_Widget_Archives', $instance, $args );
- Код виджета
- classname: widget_archive
- id_base: archives
Возможные элементы $instance
:
- title(строка)
- Заголовок виджета.
По умолчанию: __('Archives') - count(число)
- Сколько постов для каждого архива выводить. Параметр
show_post_count
для функции wp_get_archives().
По умолчанию: 0 (спрятать) - dropdown(логический)
- 1 - как выдающий список. 0 - как ul список.
По умолчанию: 0 (ul список)
Примеры:
Базовый вывод:
<?php the_widget( 'WP_Widget_Archives' ); ?>
Выпадающий список:
<?php the_widget( 'WP_Widget_Archives', 'dropdown=1' ); ?>меню
WP_Widget_Calendar
– календарь
<?php the_widget( 'WP_Widget_Calendar', $instance, $args ); ?>
- Код виджета
- classname: widget_calendar
- id_base: calendar
Возможные элементы $instance
:
- title(строка)
- Заголовок виджета
По умолчанию: нет
Примеры:
<?php the_widget( 'WP_Widget_Calendar' ); ?>
WP_Widget_Categories
– рубрики
<?php the_widget( 'WP_Widget_Categories', $instance, $args ); ?>
- Код виджета
- classname: widget_categories
- id_base: categories
Возможные элементы $instance
:
- title(строка)
- Заголовок виджета.
По умолчанию: __( 'Categories' ) - count(число)
- Количество постов в каждой категории. Параметр show_count в функциях: wp_dropdown_categories() или wp_list_categories().
По умолчанию: 0 (спрятать) - hierarchical(логический)
- 1 - Древовидный вывод: дочерние и родительские рубрики. 0 - один уровень для всех.
По умолчанию: 0 (сплошной вывод) - dropdown(логический)
- 1 - как выдающий список. 0 - как ul список.
По умолчанию: 0 (гд список)
Примеры:
Базовое использование:
<?php the_widget('WP_Widget_Categories'); ?>
Выпадающий список с количество записей в рубриках:
<?php the_widget( 'WP_Widget_Categories', 'dropdown=1&count=1' ); ?>меню
WP_Widget_Meta
– вход/выход и мета данные
Выводит полезные ссылки: вход/выход, админка, фиды, WordPress ссылки.
<?php the_widget( 'WP_Widget_Meta', $instance, $args ); ?>
- Код виджета
- classname: widget_meta
- id_base: meta
Возможные элементы $instance
:
- title(строка)
- Заголовок виджета.
По умолчанию: __('Meta')
Примеры:
Выведем виджет:
<?php the_widget( 'WP_Widget_Meta' ); ?>
WP_Widget_Pages
– постоянные страницы
Выводит список страниц.
<?php the_widget( 'WP_Widget_Pages', $instance, $args ); ?>
- Код виджета
- classname: widget_pages
- id_base: pages
Возможные элементы $instance
:
- title(строка)
- Заголовок виджета.
По умолчанию: __('Pages') - sortby(строка)
- Колонка для сортировки. Параметр
sort_column
функции wp_list_pages().
По умолчанию: 'menu_order' - exclude(строка/массив)
- ID записей которые нужно исключить из списка. Через запятую или в массиве.
По умолчанию: нет
Примеры:
Выведем список страниц:
<?php the_widget( 'WP_Widget_Pages' ); ?>
Обернем заголовок виджета в h3 тег и отсортируем страницы по дате изменения:
<?php the_widget('WP_Widget_Pages', 'title=Измененные страницы&sortby=post_modified', 'before_title=<h3>&after_title=</h3>'); ?>меню
WP_Widget_Recent_Comments
– последние комментарии
<?php the_widget( 'WP_Widget_Recent_Comments', $instance, $args ); ?>
- Код виджета
- classname: widget_recent_comments
- id_base: recent-comments
Возможные элементы $instance
:
- title(строка)
- Заголовок виджета.
По умолчанию: __('Recent Comments') - number(число)
- Число комментариев для вывода. Максимум 15.
По умолчанию: 5
Примеры:
Выведем последние комментарии:
<?php the_widget( 'WP_Widget_Recent_Comments' ); ?>
WP_Widget_Recent_Posts
– последние записи
<?php the_widget( 'WP_Widget_Recent_Posts', $instance, $args ); ?>
- Код виджета
- classname: widget_recent_entries
- id_base: recent-entries
Возможные элементы $instance
:
- title(строка)
- Заголовок виджета.
По умолчанию: __('Recent Posts') - number(число)
- Число записей для вывода. Максимум 15.
По умолчанию: 5
Примеры:
Выведем последние записи:
<?php the_widget( 'WP_Widget_Recent_Posts' ); ?>
WP_Widget_RSS
– RSS
Выводит список элементов по указанному УРЛ на RSS или Атом вида.
<?php the_widget( 'WP_Widget_RSS', $instance, $args ); ?>
- Код виджета
- classname: нет
- id_base: rss
Возможные элементы $instance
:
- title(строка)
- Заголовок виджета.
По умолчанию: берется из Указанного УРЛ - url(строка) (обязательный)
- УРЛ на RSS или Атом фид.
- items(число)
- Количество выводимых ссылок.
По умолчанию: все из фида - show_summary(логический)
- Выводить ли короткое описание под ссылками?
По умолчанию: false - show_author(логический)
- Выводить ли автора поста?
По умолчанию: false - show_date(логический)
- Выводить ли дату публикации?
По умолчанию: false
Примеры:
Выведем записи этого сайта:
the_widget( 'WP_Widget_RSS', array( 'feed' => 'http://wp-kama.ru/feed', 'items' => 5, 'show_summary' => true ) );меню
WP_Widget_Search
– поиск
<?php the_widget( 'WP_Widget_Search', $instance, $args ); ?>
- Код виджета
- classname: widget_search
- id_base: search
Возможные элементы $instance
:
- title(строка)
- Заголовок формы поиска.
По умолчанию: null
Примеры:
Выведем форму поиска:
<?php the_widget( 'WP_Widget_Search' ); ?>
WP_Widget_Tag_Cloud
– облако меток
<?php the_widget( 'WP_Widget_Tag_Cloud', $instance, $args ); ?>
- Код виджета
- classname: нет
- id_base: tag_cloud
Возможные элементы $instance
:
- title(строка)
- Заголовок виджета.
По умолчанию: __('Tags') - taxonomy(строка)
- Название таксономии из элементов которой будет построено облако.
По умолчанию: post_tag
Примеры:
Выведем облако меток:
<?php the_widget('WP_Widget_Tag_Cloud'); ?>
WP_Widget_Text
– произвольные текст
Выводит любой текст. В тексте можно использовать HTML теги.
<?php the_widget( 'WP_Widget_Text', $instance, $args ); ?>
- Код виджета
- classname: widget_text
- id_base: text
Возможные элементы $instance
:
- title(строка)
- Заголовок виджета.
По умолчанию: null (без заголовка) - text(строка)
- Текст который нужно вывести в виджете. Можно использовать HTML теги.
По умолчанию: '' - filter(строка)
- Если указать, то вывод будет обработан функцией wpautop().
По умолчанию: нет
Примеры:
Выведем произвольный текст:
the_widget( 'WP_Widget_Text', 'title=Мой Текст &text=Сам <b>текст</b>' ); /* Выведет на экран: <div class="widget widget_text"> <h2 class="widgettitle">Мой Текст </h2> <div class="textwidget">Сам <b>текст</b></div> </div> */меню
WP_Nav_Menu_Widget
– меню
Выводит ссылки из указанного меню. Учитывает вложенность и порядок элементов.
<?php the_widget( 'WP_Nav_Menu_Widget', $instance, $args ); ?>
- Код виджета
- classname: nav_menu_widget
- id_base: nav_menu
Возможные элементы $instance
:
- title(строка)
- Заголовок виджета.
По умолчанию: null - nav_menu(строка/число) (обязательный)
- ID меню, которое нужно вывести. ID меню можно узнать в админке, в настройках меню - смотрим в УРЛ (там ID видно) или берем само название меню в качестве ID.
Примеры:
Выведем меню 2 и "Мое меню":
the_widget( 'WP_Nav_Menu_Widget', array('nav_menu' => 2) ); the_widget( 'WP_Nav_Menu_Widget', array('nav_menu' => 'Мое меню') );
Для вывода меню в WordPress есть специальная функция: wp_nav_menu()
менюПроизвольный виджет
Вывод любого виджета. Пусть его класс называется "My_Custom_Widget".
<?php the_widget( 'My_Custom_Widget', $instance, $args ); ?>
-
Название класса: WIDGET CLASS NAME
-
Параметры (настройки): произвольно
- Аргументы: произвольно
Примеры:
Виджет регистрируется в коде так. Подробнее про регистрацию виджета смотрите в примерах register_widget():
class My_Custom_Widget extends WP_Widget{ // your code }
А затем выводиться так:
<?php the_widget( 'My_Custom_Widget', $instance, $args ); ?>
Заметки
- Global. WP_Widget_Factory.
$wp_widget_factory
Список изменений
С версии 2.8.0 | Введена. |
Код the widget:
wp-includes/widgets.php
WP 5.3
Cвязанные функции
Из метки: sidebar (widget Виджет)
- dynamic_sidebar()
- is_active_sidebar()
- is_active_widget()
- is_dynamic_sidebar()
- is_registered_sidebar()
- register_sidebar()