wp_insert_post добавление meta_input
В документации функции 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']
)
)
) );
}
Запись добавляется в базу данных, но без метаданных.
Я нашел этот пост на Stack, но не могу разобраться, как реализовать if statement
.
Также меня интересует способ добавления таксономий (tax_input).

meta_input
— это просто одномерный массив вида ключ => значение
:
'meta_input' => array(
'name' => $post['name'],
'city' => $post['city']
)
tax_input
устроен немного иначе: в качестве ключа используется название таксономии, а значением является массив терминов:
'tax_input' => array(
'taxonomy_name' => array(
'term',
'term2',
'term3'
)
)
Обратите внимание, что для работы tax_input
текущий авторизованный пользователь при выполнении кода должен иметь права на управление указанной таксономией, иначе операция завершится без ошибок, но не сработает.
