ACF aggiungere campi personalizzati alle categorie e visualizzarli

26 mag 2017, 16:13:48
Visualizzazioni: 24.6K
Voti: 0

Sto cercando di visualizzare campi personalizzati per le categorie in una pagina di categoria.

  1. Ho aggiunto i campi ad ACF nella tassonomia delle categorie
  2. Ho aggiunto questo snippet nel mio template personalizzato category-emails.php

    $image = get_field('header_image', 'category_74'); 
    echo($image); 
    

Questo funziona. Mostra i dati che ho in 'header_image'.

Il problema è che category_74 è hardcoded nel template. Quindi mostrerà quell'header_image solo per category_74. Sto cercando di fare in modo che qualsiasi categoria o sottocategoria della categoria 74 abbia il campo 'header_image' disponibile e che non sia necessario modificare il template.

C'è un modo per scrivere qualcosa di più generico, che sostituisca 'category_74' con qualcosa come 'categories'... Ho provato categories ma non ha funzionato.

0
Tutte le risposte alla domanda 1
1

Dai un'occhiata a questa pagina dalla documentazione di ACF: https://www.advancedcustomfields.com/resources/get-values-from-a-taxonomy-term/

In particolare questa sezione:

"Trovare il termine relativo al post corrente"

<?php

// carica tutti i termini 'category' per il post
$terms = get_the_terms( get_the_ID(), 'category');


// useremo il primo termine per caricare i dati ACF
if( !empty($terms) ) {

    $term = array_pop($terms);

    $custom_field = get_field('header_image', $term );

    // fai qualcosa con $custom_field
}

?>

Ho cambiato il loro valore "category_image" con il tuo "header_image". Penso che dovrebbe funzionare per te.

26 mag 2017 16:38:39
Commenti

sei un genio. "Genio. Genio. Genio" ha funzionato perfettamente!

Tom Tom
26 mag 2017 16:50:17