Ich hab gerade ein merkwürdiges Problem. Ich hab ein Script, das die WP Funktionen per require('./wp-blog-header.php'); einbindet. Das ganze Script funktioniert ohne Probleme solange ich es im Browser aufruf, sobald ich es aber über einen Cron (Taskmanager, Externe Dienste etc.) aufruf funktioniert es nur noch teilweise bzw. es geht bis auf eine Sache. Anbei mal die relevanten Stellen:
if ... {
$quellen = "Quelle1, Quelle2";
$content_quellen = array("Quelle1","Quelle2");
} else {
$quellen = "Quelle1";
$content_quellen = "Quelle1";
}
$post = array(
'post_title' => $content_title,
'post_content' => $content_alles,
'post_excerpt' => $content_excerpt,
'post_status' => $content_publish,
'post_category' => $content_id,
'tags_input' => $content_themen,
'tax_input' => array('quellen' => $content_quellen) //GEHT NUR IM BROWSER
);
$postId = wp_insert_post( $post );
Sprich tax_input funktioniert nur wenn ich das ganze im Browser aufruf. Jetzt hab ich bisher 2 Vermutungen.
1. Ich hab ein Fehler in der Array Geschichte, was ich aber bezweifel da es im Browser ja geht.
2. Die eigene Tax quellen existiert aus komischen Gründen nicht, wenn ich das per Cron ausführen möchte.
Da die oben gesetzen $quellen noch woanders verwendet werden und auch das funktioniert, ist die if Schleife auch als Fehler auszuschließen. Es kann also nur am insert hängen.