Afișarea termenului taxonomiei curente în cadrul unui tip de postare personalizat
Ei bine, ar trebui să fie destul de simplu, totuși nu am putut găsi răspunsul nicăieri pe internet. Toate răspunsurile pe care le-am găsit erau apropiate, dar nu exact ceea ce aveam nevoie. Ceea ce îmi trebuie este să afișez doar termenul curent al unui tip de postare personalizat în care mă aflu. nu toate termenele, doar unul! (cel relevant)
Iată ce folosesc momentan, dar afișează TOATE termenele, ceea ce nu este bine pentru mine:
<?php
$taxonomy = 'genre';
$queried_term = get_query_var($taxonomy);
$terms = get_terms($taxonomy, 'slug='.$queried_term);
if ($terms) {
foreach($terms as $term) {
echo $term->name;
}
}
?>
țineți minte - aș dori să îl afișez în șablonul meu pentru postări de tip single poate cineva să sugereze? mulțumesc

Ok, deci în sfârșit am găsit ce aveam nevoie aici: Cum să obțin termenul curent din taxonomia mea personalizată în WordPress?
ultima actualizare de la @user3208:
<?php
// Obține termenii pentru postare
$terms = get_the_terms( $post->ID , 'oil' );
// Parcurge fiecare element deoarece este un array
if ( $terms != null ){
foreach( $terms as $term ) {
// Afișează metoda name din $term care este un OBIECT
print $term->slug ;
// Elimină celelalte date stocate în obiect, deoarece nu sunt necesare
unset($term);
} } ?>
Asta a rezolvat problema mea! Mulțumesc

Ar trebui să folosești wp_get_post_terms
în loc.
$terms = wp_get_post_terms( $post_id, $taxonomy, $args );
get_terms
va returna toți termenii prezenți într-o taxonomie.
ACTUALIZARE:
global $post;
$terms = wp_get_post_terms( $post->ID, 'genre');
print_r($terms); #afisează rezultatul

Încerc dar nu funcționează. Trebuie să transmit vreo variabilă în funcție? Poți să specifici cum ar trebui să o implementez în codul meu? Mulțumesc

Dacă ești în WordPress Loop, poți folosi get_the_ID()
în loc de $post_id
. Pentru $taxonomy
, trebuie să adaugi numele taxonomiei pe care o folosești. $args
nu este necesar.

Este cu siguranță în afara loop-ului! Pur și simplu nu reușesc să o fac să funcționeze.. Poți să sugerezi cum să o implementez în afara loop-ului? Dacă este necesar, voi posta întregul cod. Mulțumesc

Apoi trebuie să adaugi global $post;
și apoi să folosești $post->ID
pentru a obține ID-ul postului.

poți să-mi arăți un exemplu folosind codul meu de mai sus? Nu sunt atât de avansat în programare. Aș aprecia. Mulțumesc

Pornind de la codul scris de user3208, am adăugat un pic de cod care include URL-ul pentru Termen. Sper că asta va ajuta pe cineva.
<?php // Obține termenii pentru postare
$terms = get_the_terms( $post->ID , 'oil' );
// Parcurge fiecare element din array
if ( $terms != null ){
foreach( $terms as $term ) {
$term_link = get_term_link( $term, 'oil' );
// Afișează numele și URL-ul
echo '<a href="' . $term_link . '">' . $term->name . '</a>';
// Elimină celelalte date stocate în obiect, deoarece nu sunt necesare
unset($term); } } ?>

Răspunsurile care conțin doar cod sunt de obicei dezaprobate fără o explicație. Poți, te rog, să editezi răspunsul tău și să explici ce face această funcție și cum rezolvă ea problema inițială, eventual cu un link către Codex pentru mai multe informații?
