#php #wordpress #woocommerce #product #taxonomy-terms
#php #wordpress #woocommerce #продукт #таксономия-термины
Вопрос:
После многочисленных попыток и около 50 статей я прихожу к выводу, что это невозможно, если только не найдется волшебник, готовый вырвать мне страницу из их книги заклинаний.
На странице продукта я хочу получить текущий идентификатор продукта и передать его функции get_the_terms(), также предоставляя таксономию ‘product_cat’ и, наконец, указать родительскую категорию.
В родительской категории, которую мы передаем, выбирается только одна дочерняя категория. Таким образом, это должно возвращать только один термин.
Я хочу сделать что-то вроде этого:
$terms = get_the_terms( the_ID(), 'product_cat', array( 'parent' => 84 ) );
foreach ($terms as $term) {
$termID = $term->term_id;
$name = $term->name;
$slug = $term->slug;
echo $name;
}
Однако это возвращает множество результатов, я перепробовал кучу других подобных запросов, но этот был бы самым красивым, если кто-нибудь может пролить свет, это было бы здорово!
Ответ №1:
Просто get_the_terms()
не допускает дополнительных аргументов, вместо этого используйте wp_get_post_terms()
, а также вы должны использовать get_the_ID()
вместо the_ID()
like
$terms = wp_get_post_terms( get_the_id(), 'product_cat', array( 'parent' => 84 ) );
Теперь это должно работать лучше.
Комментарии:
1. Ударь по деньгам! Я был так близок! Большое спасибо, что поделились!