Exibir campo personalizado se existir e tem um valor específico

Estou tentando exibir o título da postagem se o campo personalizado existe e tem um valor de Apple …

ID, 'mycustomvalue', true ) ) ) && if ( get_post_meta($post->ID, 'mycustomvalue', true ) == 'apple' ) : ?>  

Estou recebendo uma canvas branca, qualquer um onde eu estou indo errado?

Solutions Collecting From Web of "Exibir campo personalizado se existir e tem um valor específico"

Você pode se conectar ao the_title() para alterar a saída.

Em functions.php cole esta:

 function my_change_title( $title, $post_id ) { $custom_title = get_post_meta($post_id, 'mycustomvalue', true); if( isset($custom_title) && $custom_title == 'apple' ) return $custom_title; return $title; } add_filter('the_title', 'my_change_title', 10, 2); 

No seu modelo, você pode usar < ?php the_title(); ?> < ?php the_title(); ?>


Para usar seu valor personalizado em seu modelo:

 < ?php $custom_value = get_post_meta(get_the_ID(), 'mycustomvalue', true); ?> < ?php if( isset($custom_value) && $custom_value == "apple" ) : ?> Do something < ?php endif; ?> 

Porque, no seu código, você não fechou a condição IF.

Modifiquei seu código, mas não testei.

 < ?PHP $post_meta = get_post_meta(get_the_ID(), 'mycustomvalue', true); if( !empty( $post_meta ) && $post_meta == 'apple'){ the_title(); } ?> 

NOTA: se você não quer passar o terceiro parâmetro, você obterá o resultado como uma matriz e você deve alterar seu código de !empty( $post_meta ) para count( $post_meta ) > 0