wp_insert_post add meta_input


8

ドキュメントwp_insert_postは、ページの半分に次のような変更ログがあります:

以降:WordPress 4.4.0 'meta_input'配列を$ postarrに渡して、ポストメタデータを追加できるようになりました。

Wordpress 4.4.2を使用しています。次のコードを実行して、新しい投稿を追加します。

function handle_post($post) 
{
    wp_insert_post( array(
        'post_title'    => $post['title'],
        'post_type'     => 'werknemers',
        'meta_input'    => array(
            array(
                'key'   => 'name',
                'value' => $post['name']
            ),
            array(
                'key'   => 'city',
                'value' => $post['city']
            )
        )
    ) ); 
}

投稿はデータベースに追加されますが、メタデータはありません。このスタックポストを見つけましたが、の実装方法がわかりませんif statement

分類法(tax_input)を追加する方法にも興味があります。

回答:


18

meta_inputは、1次元配列key => valueです。

'meta_input' => array(
    'name' => $post['name'],
    'city' => $post['city']
)

tax_input 税がキーとして、値の配列が少し異なります。

'tax_input' => array( 
    'taxonomy_name' => array( 
        'term', 
        'term2', 
        'term3' 
    ) 
)

以下のためにという注意tax_input仕事に、ユーザが現在それ以外の場合は黙って失敗し、コードの実行は、その分類を管理する機能を有していなければならないときに記録されます。


1
返信が遅くなり申し訳ありませんが、明確な説明に感謝します!予想通り完全に機能しました
ronnyrr
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.