Я створив сторінку taxonomy.php у своїй темі WordPress. Я хотів би отримати поточний ідентифікатор терміна для функції. Як я можу це отримати?
get_query_var('taxonomy')
повертає лише термін slug, я хочу ідентифікатор
Я створив сторінку taxonomy.php у своїй темі WordPress. Я хотів би отримати поточний ідентифікатор терміна для функції. Як я можу це отримати?
get_query_var('taxonomy')
повертає лише термін slug, я хочу ідентифікатор
Відповіді:
Не звертай уваги! Я знайшов це :)
get_queried_object()->term_id;
get_queried_object_id()
для отримання лише ідентифікатора. Цілий фрагмент був би$term_id = get_queried_object_id();
Просто і легко!
get_queried_object_id()
taxonomy.php
сторінку в папці шаблонів Wordpress, я хотів би отримати поточний term id
для функції.
Просто скопіюйте пасту нижче коду!
Це надрукує ваше поточне ім'я та опис таксономії (необов'язково)
<?php
$tax = $wp_query->get_queried_object();
echo ''. $tax->name . '';
echo "<br>";
echo ''. $tax->description .'';
?>
Якщо ви перебуваєте на сторінці таксономії.
Ось так ви отримуєте всі деталі про систематику.
get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
Так ви отримуєте ідентифікаційний номер таксономії
$termId = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) )->term_id;
Але якщо ви перебуваєте на сторінці публікації (таксомонія -> дитина)
$terms = wp_get_object_terms( get_queried_object_id(), 'taxonomy-name');
$term_id = $terms[0]->term_id;
<?php
$terms = get_the_terms( $post->ID, 'taxonomy');
foreach ( $terms as $term ) {
$termID[] = $term->term_id;
}
echo $termID[0];
?>
Дивіться wp_get_post_terms () , ви зробите щось подібне:
global $post;
$terms = wp_get_post_terms( $post->ID, 'YOUR_TAXONOMY_NAME',array('fields' => 'ids') );
print_r($terms);
Ви хочете, щоб термін slug ви хотіли. Схоже, ви можете отримати ідентифікатор таким чином, якщо це те, що вам потрібно:
function get_term_link( $term, $taxonomy = '' ) {
global $wp_rewrite;
if ( !is_object($term) ) {
if ( is_int( $term ) ) {
$term = get_term( $term, $taxonomy );
} else {
$term = get_term_by( 'slug', $term, $taxonomy );
}
}