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

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

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

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>';
}

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

Миша Рудрастых Разработчик WordPress WooCommerce

Миша Рудрастых

Впервые познакомился с WordPress в 2009 году, и после двух лет мучений с Joomla и самописными движками это был просто бальзам на душу. С 2014 года меня можно встретить на WordCamp — официальной конфе по WP в Москве, иногда там выступаю. Также в настоящее время веду курсы по WordPress в Epic Skills в Питере.