wird wp_insert_post ein neues benutzerdefiniertes Feld in die database schreiben?

Wenn ich wp_insert_post so verwende:

wp_insert_post(array('post_title' => 'some title', 'post_status' => 'draft', 'meta_input' => array( '_pf_mainphone' => $pro_phone ),'tax_input' => array( 'places_taxonomy' => $_POST["npf_newpro_places"], 'protags' => $_POST["npf_newpro_tags"],))); 

Nehmen wir an, dass das _pf_mainphone kein richtiges benutzerdefiniertes Feld ist (in meiner Installation / Einrichtung gibt es kein solches benutzerdefiniertes Feld …).

Die Frage ist, wird es etwas in die database schreiben oder wird es diesen Teil des Codes einfach ignorieren?

Der Grund , warum ich das frage (obwohl ich denke, dass es nicht wirklich notwendig ist, die Frage zu beantworten) ist:

Ich möchte eine function kodieren, die jedes Feld in einer langen Form nimmt und seinen Wert auf den Wert eines benutzerdefinierten Feldes mit dem gleichen Namen wie das name-Attribut des Feldes setzt, und es gibt 2 (von 34) Felder, die don Es gibt keine benutzerdefinierten Felder (ich verwende eine andere function für einen anderen Zweck mit ihnen …).

Solutions Collecting From Web of "wird wp_insert_post ein neues benutzerdefiniertes Feld in die database schreiben?"

Ja , wp_insert_post() fügt automatisch auch neue wp_insert_post() .

Ich habe gerade Ihren genauen Code ausprobiert und es hat funktioniert. Und der Grund dafür könnte ganz einfach sein: In WordPress sind Meta-Informationen für einen Post nur ein Schlüssel-Wert-Paar. Es gibt keine strenge Regel, dass Schlüssel irgendwo definiert werden müssen, so dass Sie jederzeit Ihre eigenen einfügen können.