Как создать страницы для нужных языков после wp_insert_post()
Ситуация такая...
Я добавляю пост через wp_insert_post(). После добавления поста, я получаю ID поста. Нужно, чтобы в этот момент были добавлены и переводы для этого поста.
У меня плагин стоит polylang. В инете искал решение для данной задачи, вроде есть, но оно не подходит, поскольку мне надо еще и получить ID переводов.
Мой код выглядит так.
$customfields = array(
'name' => $name,
'surname' => $surName,
'email' => $email,
'position' => $donorPosition,
'phone' => $phone,
'address' => $address,
'currency' => $currencyType,
'comment' => $notes,
'paysystem' => $payMethod,
'status' => 'pending',
'projectid' => $projectId,
'amount' => $amount,
'anonymous' => $anonymous,
'custom_amount' => $customAmount,
'exchange' => $exchange
);
$postFields = array(
'post_status' => 'publish', // Post status.
'post_title' => 'Donated by '.$name.' '.$surName, // Post title.
'post_type' => 'custompayments', // Post type.
'meta_input' => array( 'custompaymentsfields'=> $customfields )// Add meta fields
);
$post_id = wp_insert_post( $postFields);
Мне нужно, таким образом, сразу добавить и переводы.
Спасибо за помощь!
Ответы (1 шт):
Автор решения: KAGG Design
→ Ссылка
Вы должны создать перевод так же, как и основной пост
$post_id_ru = wp_insert_post( $postFieldsRU);
И затем указать Polylang, что посты связаны:
$translations = [
'en' => $post_id,
'ru' => $post_id_ru,
] ;
pll_save_post_translations( $translations );