WordPress: gestire gli errori delle funzioni che operano sulle tassonomie

Short link

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] );
}