In WordPress occorre gestire i possibili errori generati dalle funzioni che operano sulle tassonomie.
Di norma queste funzioni restituiscono un'istanza della classe WP_Error nel caso di una tassonomia non esistente o un valore vuoto nel caso di una tassonomia con valori non impostati.
Dato che la classe WP_Error non dispone di un metodo definito per la sua conversione in stringa (__toString()), avremo un Catchable Fatal Error nel caso in cui le proprietà di una tassonomia vengano inviate al flusso di output.
Possiamo scrivere:
function my_is_valid_tax( $term ) {
return ( $term && !is_wp_error( $term ) && !empty( $term ) );
}
Esempio d'uso:
$my_terms = get_the_terms( 12, 'my_custom_tax' );
if( my_is_valid_tax( $my_terms ) ) {
echo get_term_link( $my_terms[0] );
}