eyeglasses
というカスタム投稿タイプとmodels
というカスタム分類法があります。私は分類学のためにM156
とM120
という2つの用語も作成しました。今私はwp_insert_post
を通してテストのために二つの投稿をアップロードしようとしています。
これは、eyeglasses
の$title
にpost_title
を追加することですが、投稿の用語を追加または更新することはしません。
function we_load_posts($title, $term)
{
wp_insert_post(array(
"post_type" => "eyeglasses",
"post_title" => $title,
"tax_input" => array(
"models" => array($term)
),
"post_status" => "publish"
));
}
we_load_posts("Montana", "M156");
we_load_posts("Havana", "M120");
私が足りないものや間違っているものを教えてください。
頭に浮かぶ点がいくつかあります。
"post_type" => "'eyeglasses"
(余分な一重引用符)にタイプミスがあります。 "post_type" => "eyeglasses"
です。
array( $term )
の代わりに$term
を入れてみてください。
"tax_input" => array(
"models" => $term
)
また、models
とmodel
のどちらですか。例えば.
"tax_input" => array(
"model" => $term
)
tax_input
にはassign_terms
機能が必要です。ですから、あなたがこのCODEを実行しているユーザーがその機能を持っていなければ、それは機能しません。
その場合、正しい方法は次のとおりです。
$post_id = wp_insert_post(array(
"post_type" => "eyeglasses",
"post_title" => $title,
"post_status" => "publish"
));
wp_set_object_terms( $post_id, $term, 'model' );