В современном вебе визуальный контент — ключевой элемент для привлечения внимания пользователей. Особенно важны картинки, которые автоматически подставляются при публикации в социальных сетях. В WordPress часто возникает задача: как сделать так, чтобы картинки для социальных сетей (Open Graph, Twitter Cards) создавались и обновлялись автоматически, используя возможности искусственного интеллекта, и при этом не тратить время на ручное создание и загрузку изображений?
Зачем автоматизировать создание картинок для социальных сетей
Каждый раз, когда вы публикуете новую статью или обновляете контент, соцсети подтягивают мета-теги с сайта и отображают превью с картинкой. Если картинки не настроены, соцсети могут взять случайное изображение или вовсе не показать превью, что снижает кликабельность и вовлеченность.
Автоматизация создания таких картинок позволяет:
- Экономить время на подготовку визуального контента.
- Автоматически создавать уникальные баннеры с заголовком, автором, датой и другими данными.
- Улучшать SEO и привлекательность публикаций в соцсетях.
- Использовать AI для генерации изображений, например, с помощью Midjourney, DALL·E или встроенных сервисов.
Как в WordPress настроить автоматическое создание OG и Twitter картинок с AI
Выбор подходящего плагина для генерации и вставки картинок
Сейчас на рынке есть несколько инструментов, которые можно использовать для автоматизации:
- WPGPT — плагин, который позволяет интегрировать AI для создания контента и может быть расширен для генерации изображений с помощью API AI-сервисов.
- Clearfy Pro — оптимизационный плагин с возможностями управления мета-тегами, но для генерации картинок потребуется кастомизация.
- Custom solution — написание собственного кода с интеграцией API AI для генерации изображений на лету.
Рассмотрим пример, как создать свой функционал на базе WordPress с использованием API OpenAI для генерации описания и титула, а затем отправки запроса на генерацию изображения в DALL·E, после чего картинка вставляется в мета-теги.
Пример кода: генерация и установка OG картинки
Для начала нужно получить ключи API OpenAI и DALL·E, после чего добавить в functions.php или в свой плагин следующий код:
function wpai_generate_og_image_for_post($post_id) {
if (get_post_meta($post_id, '_wpai_og_image_generated', true)) {
return; // Уже сгенерирована
}
$post = get_post($post_id);
if (!$post) return;
// Генерируем описание с помощью OpenAI (пример)
$api_key = 'ВАШ_OPENAI_API_КЛЮЧ';
$prompt = "Создай короткое описание для статьи: " . $post->post_title;
$response = wpai_call_openai_api($prompt, $api_key);
if (!$response) return;
$description = $response['choices'][0]['text'];
// Генерируем картинку через DALL·E API
$image_prompt = "Обложка для статьи с заголовком: " . $post->post_title;
$image_url = wpai_generate_dalle_image($image_prompt, $api_key);
if ($image_url) {
// Сохраняем картинку в медиатеку
$image_id = wpai_media_sideload_image($image_url, $post_id);
if ($image_id) {
update_post_meta($post_id, '_wpai_og_image_id', $image_id);
update_post_meta($post_id, '_wpai_og_image_generated', 1);
}
}
}
function wpai_call_openai_api($prompt, $api_key) {
$response = wp_remote_post('https://api.openai.com/v1/completions', [
'headers' => [
'Content-Type' => 'application/json',
'Authorization' => 'Bearer ' . $api_key
],
'body' => json_encode([
'model' => 'text-davinci-003',
'prompt' => $prompt,
'max_tokens' => 60,
])
]);
if (is_wp_error($response)) return false;
$body = json_decode(wp_remote_retrieve_body($response), true);
return $body;
}
function wpai_generate_dalle_image($prompt, $api_key) {
$response = wp_remote_post('https://api.openai.com/v1/images/generations', [
'headers' => [
'Content-Type' => 'application/json',
'Authorization' => 'Bearer ' . $api_key
],
'body' => json_encode([
'prompt' => $prompt,
'n' => 1,
'size' => '1200x630' // Размер для соцсетей
])
]);
if (is_wp_error($response)) return false;
$body = json_decode(wp_remote_retrieve_body($response), true);
return $body['data'][0]['url'] ?? false;
}
function wpai_media_sideload_image($image_url, $post_id) {
require_once(ABSPATH . 'wp-admin/includes/file.php');
require_once(ABSPATH . 'wp-admin/includes/media.php');
require_once(ABSPATH . 'wp-admin/includes/image.php');
$tmp = download_url($image_url);
if (is_wp_error($tmp)) return false;
$file_array = [
'name' => basename($image_url),
'tmp_name' => $tmp
];
$id = media_handle_sideload($file_array, $post_id);
if (is_wp_error($id)) {
@unlink($tmp);
return false;
}
return $id;
}
add_action('save_post', 'wpai_generate_og_image_for_post');Этот код автоматически при сохранении поста обращается к OpenAI для генерации описания, затем создает картинку через DALL·E, сохраняет ее в медиатеку и привязывает к посту в метаданных.
Как вставить сгенерированную картинку в мета-теги для соцсетей
Чтобы соцсети корректно отображали картинку, нужно в <head> страницы добавить соответствующие теги:
function wpai_add_og_image_meta_tags() {
if (is_singular()) {
global $post;
$image_id = get_post_meta($post->ID, '_wpai_og_image_id', true);
if ($image_id) {
$image_url = wp_get_attachment_url($image_id);
echo '<meta property="og:image" content="' . esc_url($image_url) . '" />';
echo '<meta name="twitter:image" content="' . esc_url($image_url) . '" />';
}
}
}
add_action('wp_head', 'wpai_add_og_image_meta_tags');Это гарантирует, что при шаринге в Facebook, Twitter и других соцсетях будет использоваться ваша автоматически созданная картинка.
Дополнительные советы и рекомендации
Оптимизация и кэширование
Генерация изображений с AI — процесс затратный по времени и ресурсам. Чтобы не создавать картинки при каждом обновлении, используйте флаг в мета-данных, как в примере выше. При необходимости обновления можно сделать отдельную команду или кнопку в админке.
Использование плагинов для интеграции AI
Если вы не хотите писать код с нуля, обратите внимание на плагин WPGPT от WPShop, который умеет интегрироваться с OpenAI и может быть расширен для решения подобных задач.
Альтернативы генерации изображений
Помимо AI, можно использовать шаблоны с PHP-библиотеками GD или Imagick для динамического создания баннеров с текстом. Это проще в плане затрат ресурсов, но менее креативно.
Итог
Автоматизация создания и обновления картинок для социальных сетей в WordPress с помощью AI позволяет значительно повысить качество визуального контента без ручной работы. Используя API OpenAI и DALL·E, можно создавать уникальные баннеры под каждую статью, что повышает вовлеченность и кликабельность постов в соцсетях. При этом грамотная интеграция с WordPress через хуки и метаданные обеспечивает удобство и устойчивость решения.