Описание
Проверяет наличие у поста терминов, т.е. проверяет есть ли у поста метки/категорий/разделы (с учетом таксономии).
В качестве указания терминов, функции можно передавать в параметр $term: ID терминов, их названия или слаги (альтернативные названия). Переданные данные сравниваются с данными поста. Если передаются только ID, то сравниваться будут только идентификаторы (term_id).
Если функции не переданы никакие термины для сравнения, то функция будет проверять присвоены ли посту хоть какие-нибудь термины.
Если нужно проверить наличие меток у поста используйте аналогичную функцию has_tags() .
has_term() используется в: has_tag().
Функция возвращает true или false, а зависимости от выполнения условия.
Использование
<?php if( has_term( $term, $taxonomy, $post ) ){ ... } ?>
Параметры
- $term (строка/массив/число)
- Термины который нужно проверить. Можно указать название, слаг, ID или массив из этих элементов.
По умолчанию: '' - $taxonomy (строка)
- Название таксономии в которой проверять термины.
По умолчанию: '' - $post (число/объект)
- Пост, наличие терминов у которого проверять. По умолчанию проверяется у текущего поста.
По умолчанию: null (global $post)
Примеры
1. Проверим есть ли у текущей записи какие-либо термины в таксономии videos:
if( has_term('', 'video') )
echo "Запись имеет термины в таксономии `video`";
1.2. Чтобы правильно понять предыдущий пример, его можно записать так:
if( has_term('', 'post_tag') )
echo "У текущей записи есть метки";
Так, мы просто проверим есть ли у текущей записи обычные метки, которые по умолчанию используются в WordPress (термины в таксономии post_tag). Заменить этот пример можно условным тегом if( has_tags() ).
2. Проверим есть ли у текущей записи термин triller, который находится в таксономии video:
if( has_term('triller', 'video') )
echo "Запись имеет термин `triller` в таксономии `video`";
3. Проверка наличия нескольких терминов.
Проверим, находится ли запись 59 в терминах comedy или history, которые относятся к таксономии video:
if( has_term(array('comedy','history'), 'video', 59) )
echo "Запись с ID=59 имеет термины `comedy` и `history` в таксономии `video`";
has_term()
из файла: /wp-includes/category-template.php WP 3.3.2function has_term( $term = '', $taxonomy = '', $post = null ) {
$post = get_post($post);
if ( !$post )
return false;
$r = is_object_in_term( $post->ID, $taxonomy, $term );
if ( is_wp_error( $r ) )
return false;
return $r;
}Связанные Функции
- cat_is_ancestor_of() view
- get_term_by() view
- in_category() view
- get_terms() view
- is_user_logged_in() view
- term_description() view
- wp_get_object_terms() view
- has_post_thumbnail() view
- has_tag() view
- is_archive() view
- is_date() view
- is_home() view
- is_multi_author() view
- is_paged() view
- is_search() view
- is_sticky() view
- is_tax() view
- email_exists() view
- wp_insert_term() view
- get_term_link() view
- get_the_term_list() view
- get_term_children() view
- get_the_terms() view
- post_password_required() view
- single_term_title() view
- is_attachment() view
- is_new_day() view
- is_post_type_archive() view
- is_admin() view
- is_day() view
- is_front_page() view
- is_multisite() view
- is_page_template() view
- is_single() view
- is_ssl() view
- is_year() view
- pings_open() view
- get_term() view
- is_category() view
- taxonomy_exists() view
- wp_set_object_terms() view
- wp_delete_object_term_relationships() view
- the_terms() view
- wp_attachment_is_image() view
- comments_open() view
- is_404() view
- is_author() view
- wp_set_post_terms() view
- is_month() view
- is_page() view
- is_main_query() view
- is_singular() view
- is_tag() view
- is_time() view
- wp_delete_term() view
Ещё из раздела
Смотрите также: Функции WordPress и Теги Шаблона.
Сегодня все пользуются антивирусами, но далеко не все пользуются хорошими. Зачастую хорошие антивирусы платны, купить антивирус не всегда по возможностям. Для таких малоимущих существуют различные ключи, позволяющие пользоваться антивирусом бесплатно некоторое время.
