Nun, da die Funktion is_taxonomy($taxonomy)
veraltet ist, woher weiß ich, ob eine Taxonomie existiert? Was ist die Alternative?
In einem zweiten Hinweis besagt der Codex für wp_insert_term()
, dass ein Fehler ausgelöst wird, wenn die Taxonomie nicht existiert. Hier ist der Teil "Wenn Taxonomie existiert" für mich nicht eindeutig. Bedeutet dies, dass die Taxonomie derzeit mit der registrierten_Taxonomie registriert wurde, oder bedeutet dies, dass mindestens ein Begriff in der wp_term_taxonomy()
-Tabelle mit dieser Taxonomie verknüpft ist?
Und meine dritte letzte Frage ist, wie ich einen Fehler abfange, wenn ein Fehler durch die Funktion wp_insert_term()
ausgelöst wird.
Würde das funktionieren?
if (list($term_id,$taxonomy_id) = wp_insert_term(...)):
else:
//error here?
endif;
Siehe Codex-Seite für is_taxonomy
Diese Funktion ist ab Version 3.0 veraltet. Bitte verwenden Sie stattdessen taxonomy_exists .
wp_insert_term
prüft mit taxonomy_exists
, ob die Taxonomie existiert. Dies bedeutet, wenn die Taxonomie eine registrierte Taxonomie ist. (Es wäre seltsam, wenn wp_insert_term
nur Sie Taxonomien mit vorhandenen Begriffen einen Begriff hinzufügen könnten :))
Um einen Fehler abzufangen, können Sie is_wp_error
verwenden. Z.B.
$result = wp_insert_term(...);
if ( is_wp_error( $result ) ) {
$error_string = $result->get_error_message();
echo '<div id="message" class="error"><p>' . $error_string . '</p> </div>';
}else{
list($term_id,$taxonomy_id) = $result;
}