the_widget()
Виводить цей віджет за межами сайдбара. Можна використовувати у будь-якому місці шаблону.
Хуки з функції
Повертає
null
. Нічого. Виводить на екран HTML код віджету.
Використання
the_widget($widget, $instance, $args);
-
$widget
(рядок) (обов’язковий) Назва PHP класу, що відповідає за віджет. див. /wp-includes/default-widgets.php .
Віджети з коробки:
WP_Widget_Pages WP_Widget_Links WP_Widget_Search WP_Widget_Archives WP_Widget_Media WP_Widget_Media_Audio WP_Widget_Media_Image WP_Widget_Media_Video WP_Widget_Media_Gallery WP_Widget_Meta WP_Widget_Calendar WP_Widget_Text WP_Widget_Categories WP_Widget_Recent_Posts WP_Widget_Recent_Comments WP_Widget_RSS WP_Widget_Tag_Cloud WP_Nav_Menu_Widget WP_Widget_Custom_HTML WP_Widget_Block
Детальний опис кожного віджету дивіться нижче.
-
$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()
Приклади
#1 Демо
Показати віджет за замовчуванням:
<?php the_widget( 'WP_Widget_Categories'); ?>
Показати віджет з налаштуваннями:
<?php the_widget( 'WP_Widget_Categories', 'dropdown=1&count=1' ); ?>
Показати віджет з параметрами користувача:
<?php $instance = array( 'dropdown' => 1, 'count' => 1, ); $ args = array ( 'before_widget' => '<div id="%1$s" class="widget %2$s">', 'after_widget' => '</div>', 'before_title' => '<div class="widget-title">', 'after_title' => '</div>' ); the_widget( 'WP_Widget_Categories', $instance, $args); ?>
Базові віджети WordPress
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 | Введено. |