問題描述

我有一個自定義的帖子類型’Participant’ 與許多自定義字段。我還有一個表單與相應的輸入字段供用户填寫。當他提交表單時,我想要生成一個新的帖子,每個自定義字段包含用户選擇的值。

如果有可能,怎麼辦?

最佳解決方案

使用 wp_insert_post()add_post_meta(),像這樣:

// insert the post and set the category
$post_id = wp_insert_post(array (
    'post_type' => 'your_post_type',
    'post_title' => $your_title,
    'post_content' => $your_content,
    'post_status' => 'publish',
    'comment_status' => 'closed',   // if you prefer
    'ping_status' => 'closed',      // if you prefer
));

if ($post_id) {
    // insert post meta
    add_post_meta($post_id, '_your_custom_1', $custom1);
    add_post_meta($post_id, '_your_custom_2', $custom2);
    add_post_meta($post_id, '_your_custom_3', $custom3);
}

次佳解決方案

這可以很容易地使用 Gravity Forms plugin 實現。您可以構建一個在後端填充自定義帖子類型的表單。該帖子可以設置為草稿或已發佈。添加自定義字段時沒有問題。在我的情況下,我用它來收集客户的推薦。

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。