Ho creato una pagina taxonomy.php nella mia cartella del tema WordPress. Vorrei ottenere l'ID del termine corrente per una funzione. Come posso ottenerlo?
get_query_var('taxonomy')
restituisce solo il termine slug, voglio l'ID
Ho creato una pagina taxonomy.php nella mia cartella del tema WordPress. Vorrei ottenere l'ID del termine corrente per una funzione. Come posso ottenerlo?
get_query_var('taxonomy')
restituisce solo il termine slug, voglio l'ID
Risposte:
Non importa! L'ho trovato :)
get_queried_object()->term_id;
get_queried_object_id()
per recuperare solo l'ID. L'intero snippet sarebbe$term_id = get_queried_object_id();
Semplice e facile!
get_queried_object_id()
taxonomy.php
pagina nella mia cartella dei modelli di wordpress, vorrei ottenere la corrente term id
per una funzione.
Basta copiare incollare sotto il codice!
Questo stamperà il nome e la descrizione della tassonomia corrente (opzionale)
<?php
$tax = $wp_query->get_queried_object();
echo ''. $tax->name . '';
echo "<br>";
echo ''. $tax->description .'';
?>
Se sei nella pagina della tassonomia.
È così che ottieni tutti i dettagli sulla tassonomia.
get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
Ecco come ottenere l'ID tassonomia
$termId = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) )->term_id;
Ma se sei nella pagina di post (tassomonia -> bambino)
$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];
?>
Vedi wp_get_post_terms () , faresti qualcosa del genere:
global $post;
$terms = wp_get_post_terms( $post->ID, 'YOUR_TAXONOMY_NAME',array('fields' => 'ids') );
print_r($terms);
È il termine lumaca che vuoi. Sembra che tu possa ottenere l'ID in questo modo se è quello che ti serve:
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 );
}
}