Gravitationsformen und wp_update_post

Ich verwende Gravity Forms, um Benutzern das Erstellen von Posts zu ermöglichen. Der Benutzer füllt eine Reihe von Informationen aus, und ein Beitrag wird erstellt. Der Benutzer kann wählen, in welchen Kategorien sich der Beitrag befindet, aber es gibt eine weitere Kategorie, die ich für jeden Beitrag hinzufügen muss. Ich versuche, den gform_after_submission-Hook ( http://www.gravityhelp.com/documentation/page/Gform_after_submission ) und wp_update_post zu verwenden. Ich möchte nur eine weitere Kategorie zum Beitrag hinzufügen. Hier ist mein Code:

add_action("gform_after_submission_5", "add_category", 10, 2); function add_category($entry) { $post = get_post($entry["post_id"]); $post->post_category = array ( 48 ); wp_update_post($post); } 

Dies fügt die passende Kategorie hinzu, das ist gut, aber es entfernt auch alle anderen Post-Daten, was schlecht ist.

Was mache ich falsch? Kann dieser Code funktionieren oder sollte ich einen anderen Ansatz wählen?

Solutions Collecting From Web of "Gravitationsformen und wp_update_post"

Im core sieht es so aus, als würde post_category immer überschreiben:

  // Passed post category list overwrites existing category list if not empty. 

Versuchen Sie stattdessen etwas wie:

 //wp_set_post_terms( $post_id, $terms, $taxonomy, $append ) wp_set_post_terms( $entry["post_id"], 48, $taxonomy, true ) 

Ersetzen Sie $ Taxonomie natürlich durch den korrekten Namen.