Dans la documentation de wp_insert_post
, un journal des modifications, sur la moitié de la page, indique ce qui suit:
Depuis: WordPress 4.4.0, un tableau 'meta_input' peut maintenant être passé à $ postarr pour ajouter des méta-données postérieures.
J'utilise Wordpress 4.4.2. Je vais essayer d'ajouter un nouveau message en exécutant le code comme suit:
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']
)
)
) );
}
La publication est ajoutée à la base de données, mais sans métadonnées. J'ai trouvé cet article de pile , mais je ne vois pas comment implémenter le if statement
.
Je suis également intéressé par la façon d'ajouter des taxonomies (tax_input).
meta_input
est juste un tableau à une dimension comme key => value
:
'meta_input' => array(
'name' => $post['name'],
'city' => $post['city']
)
tax_input
est légèrement différent, avec tax comme clé et un tableau de valeurs:
'tax_input' => array(
'taxonomy_name' => array(
'term',
'term2',
'term3'
)
)
Notez que pour que tax_input
fonctionne, l'utilisateur actuellement connecté lorsque le code s'exécute doit pouvoir gérer cette taxonomie, faute de quoi il échouera en mode silencieux.