widget_titleхук-фильтрWC 2.6.0

Это хук WordPress - widget_title. Плагин его просто использует.

Позволяет изменить заголовок виджета во фронтенде.

Использование

add_filter( 'widget_title', 'wp_kama_widget_title_filter', 10, 3 );

/**
 * Function for `widget_title` filter-hook.
 * 
 * @param string $title    The widget title.
 * @param array  $instance Array of settings for the current widget.
 * @param mixed  $id_base  The widget ID.
 *
 * @return string
 */
function wp_kama_widget_title_filter( $title, $instance, $id_base ){

	// filter...
	return $title;
}
$title(строка)
Заголовок виджета.
$instance(массив)

Настройки текущего виджета. Например, виджет "Рубрики" в зависимости от настроек может содержать следующие данные:

Array
(
	[title] => Рубрики
	[count] => 0
	[hierarchical] => 1
	[dropdown] => 1
)
$id_base(строка)
ID виджета, который указывается в конструкторе класса виджета. Например виджет "Рубрики" имеет id = categories, а у виджета "Свежие записи" id = recent-posts.

Примеры

1

#1 Изменим заголовок только у виджетов "Рубрики".

Сделаем всё тоже самое, что и в первом примере, но только для виджетов "Рубрики".

/**
 * Изменяет заголовок у всех виджетов "Рубрики".
 *
 * @param string $title
 * @param array  $instance
 * @param string $id_base
 *
 * @return string
 */
function filter_widget_categories_title( $title, $instance, $id_base ) {
	if ( 'categories' == $id_base ) {
		$title = "<span class='my-custom-class'>$title</span>";
	}

	return $title;
}

add_filter( 'widget_title', 'filter_widget_categories_title', 10, 3 );
0

#2 Изменим заголовок у всех виджетов.

Обернем заголовок у всех виджетов в тег span с произвольным CSS классом.

/**
 * Изменяет заголовок всех виджетов.
 *
 * @param string $title
 *
 * @return string
 */
function filter_all_widget_title( $title ) {
	return "<span class='my-custom-class'>$title</span>";
}

add_filter( 'widget_title', 'filter_all_widget_title' );
0

#3 Изменим заголовок у всех виджетов "Рубрики" в виде выпадающего списка.

/**
 * Изменяет заголовок у всех виджетов "Рубрики" в виде выпадающего списка.
 *
 * @param string $title
 * @param array  $instance
 * @param string $id_base
 *
 * @return string
 */
function filter_widget_categories_title( $title, $instance, $id_base ) {
	if ( 'categories' == $id_base && ! empty( $instance['hierarchical'] ) ) {
		$title .= ' в виде выпадающего списка';
	}

	return $title;
}

add_filter( 'widget_title', 'filter_widget_categories_title', 10, 3 );

Где вызывается хук

WC_Widget::widget_start()
widget_title
woocommerce/includes/abstracts/abstract-wc-widget.php 165
$title = apply_filters( 'widget_title', $this->get_instance_title( $instance ), $instance, $this->id_base );

Где используется хук в WooCommerce

Использование не найдено.