Wie kann ich einen Beitrag dynamisch einem benutzerdefinierten Beitragstyp hinzufügen, der ein benutzerdefiniertes Feld verwendet?

Ich habe einen benutzerdefinierten Beitragstyp namens “Patienten”. Ich habe nur den Post-Titel verwendet, aber jetzt muss ich eine Beziehung mit den Nutzern aufbauen.

Ich habe dies gemacht, indem ich ein benutzerdefiniertes Post-Feld (erstellt von ACF) erstellt habe, ein relationales Feld, das einen Benutzertyp anzeigt. Es funktioniert gut für den Admin, aber ich muss auch einige Beiträge dynamisch einfügen. Wie kann ich das machen?

Ich habe Beiträge (vor der Notwendigkeit der Beziehung) hinzugefügt, indem ich Folgendes benutze:

wp_insert_post( array( 'post_name' => $p_name, 'post_title' => $p_name, 'post_type' => 'patient' ), true ); 

Solutions Collecting From Web of "Wie kann ich einen Beitrag dynamisch einem benutzerdefinierten Beitragstyp hinzufügen, der ein benutzerdefiniertes Feld verwendet?"

Ich bin nicht sur, aber ich denke, du hattest (werde probalby helfen anderen Menschen als der Typ, der ich 1hour war) / habe das gleiche Problem, das ich gerade auflösen.

Sie haben ein benutzerdefiniertes Feld und möchten ein Feld Benutzertyp darin verwalten?

Nun, jeder weiß UPDATE_FIELD, aber was ich nicht wusste, dass wenn Sie einen Benutzer hinzufügen möchten, müssen Sie nur die ID geben, und nicht die Array-Struktur, die ausgedruckt wird, wenn Sie dieses fild bekommen (Nickname, Nicename, Displayname). ..)

update_field (‘yourfieldkey’, ArrayofyouruserID, deridofyourrelatedpost);

Mein Code zum Verwalten (Hinzufügen / Löschen) eines neuen Benutzers im Zusammenhang mit dem Post:

 /* remake the memberassigned list*/ $ticket_users = get_field('tickets_assignedto', $thispost_id); $new_assignedmembersID = array(); if ( $ticket_users != '' ) { foreach ($ticket_users as $ticket_user) { if ( $ticket_user['ID'] != $member_id ) { $new_assignedmembersID[] = $ticket_user['ID']; } } } if ( $byeorhi == 'member_unassigned') { $new_assignedmembersID[] = $member_id; } update_field('field_54b8d8b213289', $new_assignedmembersID, $thispost_id); 

Wie in den Kommentaren von @Nilambar vorgeschlagen, gibt wp_insert_post die ID des erstellten wp_insert_post zurück. Damit:

 $new_patient = wp_insert_post( array( 'post_name' => $p_name, 'post_title' => $p_name, 'post_type' => 'patient' ), true ); 

Verwenden Sie dann die zurückgegebene ID , um Ihre Beziehungen zu erstellen, fügen Sie Ihre Meta und Begriffe usw. hinzu.