get_term_link() — функция для вывода ссылки на элемент таксономии

Владислав Белецкий
Владислав Белецкий .
Категория:
Комментариев: 0

Возвращает ссылку на страницу архива того или иного элемента таксономии.

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

get_term_link( $term, $taxonomy );

Параметры

$term
(объект|целое|строка) (обязательно) — объект/ID/ярлык элемента таксономии.

$taxonomy
(строка) (обязательно) — ярлык самой таксономии, например post_tag, movies и т.д. Не обязателен, если в первом параметре указан объект.

Функция возвращает URL элемента таксономии в виде строки.

Примеры использования

get_term_link бывает удобно использовать в цикле после функции get_terms (более подробно о параметрах функции можете почитать, перейдя по ссылке), например вот два примера вывода ссылки без функции.

С включенными ЧПУ:

echo site_url() . '/movies/' . $term->slug;

Минус этого примера в том, что если на сайте отключить ЧПУ, то все ваши ссылки полетят.

Без ЧПУ:

echo site_url() . '/?movies=' . $term->slug;

Более надежный вариант:

echo get_term_link($term->slug, 'movies');

Тут кстати в качестве параметра задается ярлык элемента таксономии.

Полный пример:

$terms = get_terms('movies');
foreach ($terms as $term) {
	echo '<a href="' . get_term_link($term->slug, $term->taxonomy) . '">' . $term->name . '</a>';
}

Самый оптимальный на мой взгляд вариант использования в цикле:

$terms = get_terms('movies');
foreach ($terms as $term) {
	echo '<a href="' . get_term_link($term) . '">' . $term->name . '</a>';
}

Если задаете в качестве значения первого параметра ID элемента, для начала убедитесь, что это целое число!

/*
 * при добавлении intval() выскакивает ошибка:
 * Catchable fatal error: Object of class WP_Error could not be converted to string
 * поэтому, помимо всего прочего, заключаем результат в функцию is_string()
 */
$terms = get_terms('movies');
foreach ($terms as $term) {
	echo '<a href="' . is_string(get_term_link(inval($term->term_ID)), $term->taxonomy) . '">' . $term->name . '</a>';
}

Короче говоря, по возможности лучше использовать в качестве первого параметра ярлык или объект.

Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии