Eu uso o CMB2 para configurar campos personalizados, e a lógica não é tão diferente do ACF em muitos casos. Para meu caso de uso específico, criei uma função muito simples, mas flexível, para fazer algumas verificações da taxonomia antes de exibir o valor do campo personalizado .
Considerando que um criou um campo personalizado chamado my_cf
para, digamos, uma taxonomia denominada básico como no seu exemplo, a seguinte função pode ajudar a responder sua pergunta e talvez Estender um pouco o uso do seu campo personalizado.
function get_taxonomy_terms_custom_fields( $taxonomy = '' ) {
global $post;
$terms = get_the_terms( $post->ID, $taxonomy );
// Check if we have a taxonomy and that it is valid. If not, return false
if ( !$taxonomy )
return false;
// Sanitize the taxonomy input
$taxonomy = filter_var( $taxonomy, FILTER_SANITIZE_STRING );
// keep playing safe
if ( !taxonomy_exists( $taxonomy ) )
return false;
foreach ( $terms as $term ) {
// Set a variable for taxonomy term_id
$tax_term_id = $term->term_id;
$my_field = get_term_meta( $tax_term_id, 'my_cf', true );
// Make sure we do not have a WP_Error object, not really necessary, but better be safe
if ( is_wp_error( $term ) )
continue;
// escaping the returned value // esc_html(), esc_url(), esc_attr()
return esc_html($my_field);
}
}
Basta usar <?php get_taxonomy_terms_custom_fields ('basic'); ?>
substituindo basic
por seu próprio nome de taxonomia.
A função get_taxonomy_terms_custom_fields ()
verificará a taxonomia especificada e o tipo de loop em todas as categorias atribuídas a um post, post_type e retornará o valor do campo personalizado, se presente, evitando erros, se não. Também pode ser estendido para verificar um campo que produz um array (), como um campo repetível.
Espero que ajude - boa sorte!