If there’s a value for the custom field, I want it to display the value. If there’s no value for the custom field, I want it to display “N/A”. I have this working for custom fields but cant replicate the same functionality for a custom taxonomy.
This works for a custom field:
$url = get_post_meta( get_the_ID(), 'event-code', true );
if ( ! empty( $url ) ) {
print ( $url );
}
else {
print 'N/A';
}
In the case of a custom taxonomy entry with a value, this displays both the value and “N/A”:
$promtax = the_terms( get_the_ID(), 'promotion','' );
if ( ! empty( $promtax ) ) {
print ( $promtax );
}
else {
print 'N/A';
}
I’ve used variations and combinations of isset, empty without any luck. Thanks.
the_terms()
echoes output. To assign output to a variable and check if there is any you need to useget_the_term_list()
instead.Note that it might also return
WP_Error
object (which won’t be empty) so you will need to check for it as well withis_wp_error()
.Use
get_the_terms
. It will either return an empty array, a WP_Error object, or the terms. So you can check it they exist.get_the_term_list
would work the same way, but you’ll get less control of the output.