ACF adăugare câmpuri personalizate pentru categorii și afișare

26 mai 2017, 16:13:48
Vizualizări: 24.6K
Voturi: 0

Încerc să afișez câmpuri personalizate pentru categorii pe o pagină de categorie.

  1. Am adăugat câmpurile în ACF în taxonomia de categorii
  2. Am adăugat acest fragment în fișierul meu personalizat category-emails.php

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

Acest cod funcționează. Afișează datele pe care le am în 'header_image'.

Problema este că category_74 este codat direct în șablon. Deci va afișa acel header_image doar pentru category_74. Încerc să fac astfel încât orice categorie sau subcategorie a categoriei 74 să aibă câmpul 'header_image' disponibil și să nu trebuiască să modific șablonul.

Există o modalitate de a scrie ceva mai general, care să înlocuiască 'category_74' cu ceva de genul 'categories'... Am încercat categories dar nu a funcționat.

0
Toate răspunsurile la întrebare 1
1

Verifică această pagină din documentația ACF: https://www.advancedcustomfields.com/resources/get-values-from-a-taxonomy-term/

Mai exact această secțiune:

"Găsirea termenului asociat postării curente"

<?php

// încarcă toți termenii 'category' pentru postare
$terms = get_the_terms( get_the_ID(), 'category');


// vom folosi primul termen pentru a încărca datele ACF
if( !empty($terms) ) {

    $term = array_pop($terms);

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

    // faci ceva cu $custom_field
}

?>

Am schimbat valoarea lor "category_image" cu valoarea ta "header_image". Cred că ar trebui să funcționeze pentru tine.

26 mai 2017 16:38:39
Comentarii

ești un geniu. "Geniu. Geniu. Geniu" a funcționat perfect!

Tom Tom
26 mai 2017 16:50:17