Как добавить в запись WordPress featured_image при помощи wp_insert_post?

Добавление featured_image при создании записи в WordPress можно осуществить с помощью функции wp_insert_post(). Для этого необходимо выполнить следующие шаги:

1. Сначала получим URL изображения, которое вы хотите установить в качестве featured_image. Предположим, что URL изображения хранится в переменной $featured_image_url.

2. Создадим массив данных для новой записи, включая заголовок, контент и остальные необходимые данные. Предположим, что данные записи хранятся в массиве $post_data. Обратите внимание, что в массиве данных не должно быть ключа "ID", так как это значение будет назначено автоматически.

3. Вставим новую запись с помощью функции wp_insert_post(). Получим ID вставленной записи.

// Шаг №1: Получение URL изображения featured_image
$featured_image_url = 'https://example.com/path/to/featured-image.jpg';

// Шаг №2: Создание массива данных для новой записи
$post_data = array(
    'post_title' => 'Заголовок новой записи',
    'post_content' => 'Контент новой записи',
    'post_status' => 'publish',
    'post_type' => 'post',
);

// Шаг №3: Вставка новой записи и получение ID вставленной записи
$new_post_id = wp_insert_post($post_data);

// Проверка успешного создания записи
if ($new_post_id) {
    // Шаг №4: Проверка наличия featured_image и установка его в запись
    if ($featured_image_url) {
        // Получение ID прикрепленного изображения по URL
        $featured_image_id = attachment_url_to_postid($featured_image_url);
        
        // Если изображение существует
        if ($featured_image_id) {
            // Установка изображения в качестве featured_image для записи
            set_post_thumbnail($new_post_id, $featured_image_id);
        }
    }
}

В этом коде мы используем функцию attachment_url_to_postid() для получения ID прикрепленного изображения по URL. Затем используем функцию set_post_thumbnail() для установки изображения в качестве featured_image для новой записи.

Если изображение не существует, ничего не произойдет, и featured_image не будет установлен.

Этот код можно добавить в файл functions.php вашей темы, в шаблон страницы или в файл плагина. Убедитесь, что перед использованием вам нужно изменить значения переменных $featured_image_url, $post_data и $new_post_id в соответствии с вашими потребностями.

Таким образом, вы сможете добавить featured_image в запись WordPress при помощи функции wp_insert_post().