Hier ist das Problem, das ich habe:
Hier ist die Funktion und die Aktion, die ich verwende, um einen Begriff einzufügen:
// programatically add 2 terms to the taxonomy "FRIENDS OF"
function example_insert_category() {
wp_insert_term(
'Example Category',
'friendsof'
);
}
add_action( 'after_setup_theme', 'example_insert_category' );
Das Problem: wp_insert_term scheint nicht mit meiner benutzerdefinierten Taxonomie zu funktionieren
Was ich ausprobiert habe:
versuche init anstelle von after_setup_theme
function example_insert_category() {
wp_insert_term(
'Example Category',
'friendsof'
);
}
add_action( 'init', 'example_insert_category' );
Ich weiß zwar nicht warum und habe im Moment keine Zeit zu recherchieren, aber der Haken, den Sie gewählt haben, ist zu früh. Ihr Code funktioniert, wenn Sie beispielsweise init
anstelle von after_setup_theme
verwenden.
Darüber hinaus wird Ihr Code, wie bereits geschrieben, bei jedem Seitenaufruf ausgeführt, was ein wenig verworren ist. Es sollte eine Möglichkeit geben, dies nur bei der Aktivierung des Plugins oder bei einer Änderung des Themas auszuführen. Dies verringert die Häufigkeit, mit der das Plugin ausgeführt wird. Vielleicht ist der beste Fall ein Button im Theme/Plugin, um "Defaults ausfüllen". Sobald dies ausgeführt wird, wird es nicht mehr benötigt, da sich die Daten in der Datenbank befinden.