WordPress как на ладони
Новые WordPress шаблоны Хостинг, VPS/VDS и отдельные сервера только на SSD дисках. 7 дней бесплатного тестирования.

get_taxonomy_labels() WP 3.0.0

Строит/возвращает объект со всеми заголовками указанной таксономии.

Это вспомогательная функция. Нужна чтобы заполнить недостающие заголовки в описании таксономии. Например, если не был указан заголовок для 'not_found' то он будет заменен на $tax->no_tagcloud. Используйте в функции register_taxonomy().

Описание заголовков, которые указываются в массиве при регистрации таксономии смотрите в описании параметра labels в функции register_taxonomy().

Работает на основе: _get_custom_object_labels()
Хуки из функции:
Возвращает

Объект с заголовками таксономии. Базовые значения по умолчанию устанавливаются всем таксономиям, при этом дефолтные значения отличаются для древовидных и не древовидных таксономий.

Возможные значения массива:

  • name
    Имя таксономии, обычно во множественном числе. По умолчанию _x( 'Post Tags', 'taxonomy general name' ) или _x( 'Categories', 'taxonomy general name' );

  • singular_name
    Название для одного элемента этой таксономии. По умолчанию _x( 'Post Tag', 'taxonomy singular name' ) или _x( 'Category', 'taxonomy singular name' );

  • menu_name
    Текст для названия меню. Эта строка обозначает название для пунктов меню. По умолчанию значение параметра name;

  • search_items
    Текст для поиска элемента таксономии. По умолчанию __( 'Search Tags' ) или __( 'Search Categories' );

  • popular_items
    Текст для блока популярных элементов. __( 'Popular Tags' ) или null;

  • all_items
    Текст для всех элементов. __( 'All Tags' ) или __( 'All Categories' );

  • parent_item
    Текст для родительского элемента таксономии. Этот аргумент не используется для не древовидных таксономий. По умолчанию null или __( 'Parent Category' );

  • parent_item_colon
    Текст для родительского элемента таксономии, тоже что и parent_item но с двоеточием в конце. По умолчанию нет или __( 'Parent Category:' );

  • edit_item
    Текст для редактирования элемента. По умолчанию __( 'Edit Tag' ) или __( 'Edit Category' );

  • update_item
    Текст для обновления элемента. По умолчанию __( 'Update Tag' ) или __( 'Update Category' );

  • add_new_item
    Текст для добавления нового элемента таксономии. По умолчанию __( 'Add New Tag' ) или __( 'Add New Category' );

  • view_item
    Текст для просмотра термина таксономии. По умолчанию: "Посмотреть метку", "Посмотреть категорию". Используется например, в админ баре (тулбаре).

  • new_item_name
    Текст для создания нового элемента таксономии. По умолчанию __( 'New Tag Name' ) или __( 'New Category Name' );

  • separate_items_with_commas
    Текст описывающий, что элементы нужно разделять запятыми (для блога в админке). Не работает для древовидного типа. По умолчанию __( 'Separate tags with commas' ) или null;

  • add_or_remove_items
    Текст для "удаления или добавления элемента", который используется в блоке админке, при отключенном javascript. Не действует для древовидных таксономий. По умолчанию __( 'Add or remove tags' ) или null;

  • choose_from_most_used
    текст для блога при редактировании поста "выберите из часто используемых". Не используется для древовидных таксономий. По умолчанию __( 'Choose from the most used tags' ) или null;

  • popular_items
    Текст для поиска популярных терминов. Этот параметр не используется для древовидных таксономий. По умолчанию: "Популярные метки" или null.

  • separate_items_with_commas
    Текст говорящий о том, что термины (метки) нужно разделять запятыми. Не используется для древовидных таксономий. По умолчанию: "Разделяйте метки запятыми" или null.

  • add_or_remove_items
    Текст для добавления или удаления терминов. Не используется для древовидных типов. По умолчанию: "Добавить или удалить метки". или null.

  • choose_from_most_used
    Текст "Выбрать из часто используемых". Не используется для древовидных типов.

  • not_found
    Текст "не найдено", который отображается, если при клике на часто используемые ни один термин не был найден.

  • no_terms
    Используется в таблицах записей и медиафайлов. По умолчанию 'No tags'/'No categories'.

  • items_list_navigation
    Текст для таблицы пагинации, для скрытого заголовка.

  • items_list
    Текст для скрытого заголовка таблицы.

  • most_used
    Текст для вкладки "Часто используемые". С версии 4.9.

  • back_to_items
    Текст который будет показан после обновления термина. С версии 4.9.

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

get_taxonomy_labels( $tax );
$tax(объект/WP_Taxonomy) (обязательный)
Объект таксономии.

Примеры

#1 Демонстрация работы

$tax = get_taxonomy('category');

$labels = get_taxonomy_labels( $tax );

print_r( $labels );

/* Получим:
stdClass Object
(
	[name] => Рубрики
	[singular_name] => Рубрика
	[search_items] => Поиск рубрик
	[popular_items] => 
	[all_items] => Все рубрики
	[parent_item] => Родительская рубрика
	[parent_item_colon] => Родительская рубрика:
	[edit_item] => Изменить рубрику
	[view_item] => Просмотреть рубрику
	[update_item] => Обновить рубрику
	[add_new_item] => Добавить новую рубрику
	[new_item_name] => Название новой рубрики
	[separate_items_with_commas] => 
	[add_or_remove_items] => 
	[choose_from_most_used] => 
	[not_found] => Рубрик не найдено.
	[no_terms] => Рубрик нет
	[menu_name] => Рубрики
	[name_admin_bar] => category
)
*/

Код get_taxonomy_labels: wp-includes/taxonomy.php VER 4.9.8

<?php
function get_taxonomy_labels( $tax ) {
	$tax->labels = (array) $tax->labels;

	if ( isset( $tax->helps ) && empty( $tax->labels['separate_items_with_commas'] ) )
		$tax->labels['separate_items_with_commas'] = $tax->helps;

	if ( isset( $tax->no_tagcloud ) && empty( $tax->labels['not_found'] ) )
		$tax->labels['not_found'] = $tax->no_tagcloud;

	$nohier_vs_hier_defaults = array(
		'name' => array( _x( 'Tags', 'taxonomy general name' ), _x( 'Categories', 'taxonomy general name' ) ),
		'singular_name' => array( _x( 'Tag', 'taxonomy singular name' ), _x( 'Category', 'taxonomy singular name' ) ),
		'search_items' => array( __( 'Search Tags' ), __( 'Search Categories' ) ),
		'popular_items' => array( __( 'Popular Tags' ), null ),
		'all_items' => array( __( 'All Tags' ), __( 'All Categories' ) ),
		'parent_item' => array( null, __( 'Parent Category' ) ),
		'parent_item_colon' => array( null, __( 'Parent Category:' ) ),
		'edit_item' => array( __( 'Edit Tag' ), __( 'Edit Category' ) ),
		'view_item' => array( __( 'View Tag' ), __( 'View Category' ) ),
		'update_item' => array( __( 'Update Tag' ), __( 'Update Category' ) ),
		'add_new_item' => array( __( 'Add New Tag' ), __( 'Add New Category' ) ),
		'new_item_name' => array( __( 'New Tag Name' ), __( 'New Category Name' ) ),
		'separate_items_with_commas' => array( __( 'Separate tags with commas' ), null ),
		'add_or_remove_items' => array( __( 'Add or remove tags' ), null ),
		'choose_from_most_used' => array( __( 'Choose from the most used tags' ), null ),
		'not_found' => array( __( 'No tags found.' ), __( 'No categories found.' ) ),
		'no_terms' => array( __( 'No tags' ), __( 'No categories' ) ),
		'items_list_navigation' => array( __( 'Tags list navigation' ), __( 'Categories list navigation' ) ),
		'items_list' => array( __( 'Tags list' ), __( 'Categories list' ) ),
		/* translators: Tab heading when selecting from the most used terms */
		'most_used' => array( _x( 'Most Used', 'tags' ), _x( 'Most Used', 'categories' ) ),
		'back_to_items' => array( __( '&larr; Back to Tags' ), __( '&larr; Back to Categories' ) ),
	);
	$nohier_vs_hier_defaults['menu_name'] = $nohier_vs_hier_defaults['name'];

	$labels = _get_custom_object_labels( $tax, $nohier_vs_hier_defaults );

	$taxonomy = $tax->name;

	$default_labels = clone $labels;

	/**
	 * Filters the labels of a specific taxonomy.
	 *
	 * The dynamic portion of the hook name, `$taxonomy`, refers to the taxonomy slug.
	 *
	 * @since 4.4.0
	 *
	 * @see get_taxonomy_labels() for the full list of taxonomy labels.
	 *
	 * @param object $labels Object with labels for the taxonomy as member variables.
	 */
	$labels = apply_filters( "taxonomy_labels_{$taxonomy}", $labels );

	// Ensure that the filtered labels contain all required default values.
	$labels = (object) array_merge( (array) $default_labels, (array) $labels );

	return $labels;
}
Комментариев нет
    Здравствуйте, !     Войти . Зарегистрироваться