Ich versuche, ein Front-End-Buchungssystem zu implementieren, das Taxonomiedaten in mehreren Dropdown-Auswahlfeldern anzeigt. Jede der Dropdowns wird mit dem "Namen" $arg
in benannt wp_dropdown_categories()
.
wp_dropdown_categories( array(
'taxonomy' => 'location',
'hide_empty' => 0,
'orderby' => 'name',
'order' => 'ASC',
'name' => 'location',
) );
Wie Sie sehen können, lautet die Taxonomie "Standort" und der ausgewählte Name "Standort".
Ich füge dann die Variablen für jede Taxonomie hinzu und wähle Dropdowns wie folgt zusammen mit post_title, post_content usw. aus:
$title = trim( $_POST['wpuf_post_title'] );
$content = trim( $_POST['wpuf_post_content'] );
$tags = wpuf_clean_tags( $_POST['wpuf_post_tags'] );
$customcategory = trim( $_POST['customcategory'] );
$cat = trim( $_POST['cat'] );
$location = trim( $_POST['location'] );
$sale_rental = trim( $_POST['sale_rental'] );
$price = trim( $_POST['price'] );
Schließlich füge ich die zusätzlichen Informationen in ein Array ein, das zum Senden bereit ist wp_insert_post()
. Ich bin ziemlich festgefahren, ob ich das Richtige tue, indem ich tax_input
das Array wie unten hinzufüge, da dies das ist, was ich aus dem Codex verstehe, das ich tun muss.
'tax-input' => array(
$location,
$sale_rental,
$price
),
Damit alles so aussieht:
$my_post = array(
'post_title' => $title,
'post_content' => $content,
'post_status' => $post_status,
'post_author' => $userdata->ID,
'post_category' => array( $_POST['cat'] ),
'post_type' => $customcategory,
'tags_input' => $tags,
'tax_input' => array(
$location,
$sale_rental,
$price
),
);
$post_id = wp_insert_post( $my_post );
Wenn ich jedoch den neuen Beitrag abschicke, gehen alle Standardbeitragsdaten (und auch mein benutzerdefinierter Beitragstyp) in Ordnung, die Taxonomien jedoch nicht. Ich mache offensichtlich etwas falsch, aber was?