Intereting Posts
Не удалось указать каталог дочерних тем, даже используя get_stylesheet_directory () Получать сообщение из заказа пользовательского почтового типа двумя таксономиями Описание тега не показывает гиперссылку Проблема с возвратом категории типа сообщения Ошибки подключения к LDAP в WordPress MU сделать многоязычный веб-сайт wordpress Arabic-english Добавьте div после каждых 4 сообщений, затем каждые 2 сообщения для ответного цикла Как сделать несколько проверок_nonce в одной функции? Несколько мета-ящиков в отдельных файлах Как заставить виджет боковой панели обладать контейнером div во всех дочерних виджетах? Слишком медленная генерация страниц: sanitize_post называется почти 100k Переадресация за пределами WP после входа в систему Как использовать «if field exists» с помощью $ curauth? Установка WordPress MU за пределы htdocs Добавляйте <! – nextpage -> к каждому сообщению, чтобы принудительно добавить ссылку на страницу (и статический контент)

Как показать термины таксономии из базы данных wordpress?

Я пытаюсь показать все термины, связанные с таксономией «конкуренция», как раскрытие в моем метаболизме, но оно не появляется.

<p> <label for="match_competition_name"><?php _e( 'Comtetition', 'match_details' ); ?></label> <select name="match_competition_name" id="match_competition_name"> <?php global $wpdb; $get_comtetition=$wpdb->get_results("SELECT * FROM 'wp_term_taxonomy' WHERE 'taxonomy' = 'competition' "); foreach($get_comtetition as $row){ ?> <option <?php echo (match_details_get_meta( 'match_competition_name' ) === $row->post_title ) ? 'selected' : '' ?>><?php echo $row->post_title;?></option> <?php } ?> </select> </p> 

Решение:

get_terms () – Получить термины в данной таксономии или список таксономий.

Вы можете полностью вставить любые настройки в запрос до его отправки, а также управлять выходом с помощью фильтра.

Фильтр 'get_terms' будет вызываться, когда кеш имеет этот термин и передаст найденный термин вместе с массивом $ таксономий и массивом $ args. Этот фильтр также вызывается до того, как массив терминов будет передан и передаст массив терминов вместе с таксономиями $ и $ args.

get_terms возвращает массив объектов. Вы не можете эхо-массива, если вы это сделаете, вы просто получите Array (). То, что вы можете сделать, это print_r($array) или var_dump($array) чтобы увидеть содержащиеся в нем данные.

 $taxonomy = 'shirt'; $args=array( 'hide_empty' => false, 'orderby' => 'name', 'order' => 'ASC' ); $tax_terms = get_terms( $taxonomy, $args ); foreach ( $tax_terms as $tax_term ) { echo $tax_term->name; } 

Решение второе:

Вы можете использовать функцию get_taxonomies() , чтобы запросить get_taxonomies() вам таксономию.

Синтаксис:

  <?php get_taxonomies( $args, $output, $operator ) ?> 

Пример:

В этом примере используется вывод «object» для извлечения и отображения таксономии под названием «жанр»:

 <?php $args=array( 'name' => 'genre' ); $output = 'objects'; // or names $taxonomies=get_taxonomies($args,$output); if ($taxonomies) { foreach ($taxonomies as $taxonomy ) { echo '<p>' . $taxonomy->name . '</p>'; } } ?>