Как создать автоматический импорт постов из RSS в WordPress

Зачем нужен автоматический импорт постов из RSS

Автоматический импорт записей из RSS-ленты позволяет регулярно получать актуальный контент с других сайтов и публиковать его на своём ресурсе без ручного копирования. Это полезно для агрегаторов новостей, тематических блогов и сайтов с обновляемым контентом. Такой подход экономит время и помогает поддерживать сайт свежим и интересным для посетителей.

Однако важно учитывать авторские права и корректно оформлять ссылки на источник. В этой статье расскажем, как реализовать автоматический импорт постов из RSS в WordPress с помощью собственного кода и рассмотрим готовые решения.

Использование встроенного класса SimplePie для парсинга RSS

WordPress содержит встроенную библиотеку SimplePie, которая отлично подходит для работы с RSS- и Atom-лентами. С её помощью можно легко получать и обрабатывать записи из внешнего RSS.

Ниже пример функции, которая загружает последние 5 записей из RSS и автоматически публикует их в WordPress с учетом проверки на дубликаты.

function wpdevelop_import_rss_posts() {
    include_once( ABSPATH . WPINC . '/feed.php' );

    $rss = fetch_feed('https://example.com/feed/'); // URL вашей RSS-ленты

    if ( is_wp_error( $rss ) ) {
        return; // Ошибка при загрузке ленты
    }

    $maxitems = $rss->get_item_quantity(5); // Количество импортируемых записей
    $rss_items = $rss->get_items(0, $maxitems);

    foreach ( $rss_items as $item ) {
        $title = esc_html( $item->get_title() );
        $link = esc_url( $item->get_permalink() );
        $content = $item->get_content();
        $date = $item->get_date('Y-m-d H:i:s');

        // Проверяем, есть ли уже такой пост
        $existing = get_posts(array(
            'title' => $title,
            'post_type' => 'post',
            'post_status' => 'any'
        ));

        if ( empty($existing) ) {
            // Создаем новый пост
            wp_insert_post(array(
                'post_title' => $title,
                'post_content' => $content . '<p><a href="' . $link . '" target="_blank">Источник</a></p>',
                'post_status' => 'publish',
                'post_date' => $date,
                'post_author' => 1
            ));
        }
    }
}

Эту функцию можно вызвать вручную или повесить на крон-задачу WordPress, чтобы импорт происходил автоматически с нужной периодичностью.

Добавление автоматического запуска через wp_cron

Чтобы импорт запускался регулярно, зарегистрируем событие wp_cron. Для этого добавим следующий код в functions.php вашей темы или в плагин:

if ( ! wp_next_scheduled( 'wpdevelop_rss_import_event' ) ) {
    wp_schedule_event( time(), 'hourly', 'wpdevelop_rss_import_event' );
}

add_action( 'wpdevelop_rss_import_event', 'wpdevelop_import_rss_posts' );

Таким образом функция wpdevelop_import_rss_posts будет запускаться каждый час и импортировать новые записи из RSS.

Обзор плагинов для импорта RSS в WordPress

Если не хочется писать код, можно использовать готовые решения. Вот несколько плагинов, которые поддерживают импорт и публикацию записей из RSS:

  • WP RSS Aggregator — мощный плагин с множеством расширений, позволяет импортировать и фильтровать записи, создавать собственные каналы.
  • Feedzy RSS Feeds — простой и удобный, поддерживает шорткоды для вывода импортированных записей, есть платные функции автопубликации.
  • RSSImport — лёгкий плагин для вывода RSS-лент с минимальными настройками.

Для расширенного автоматического импорта с публикацией лучше обратить внимание на WP RSS Aggregator и его расширения.

Практические советы по настройке и безопасности

При импорте с внешних источников важно:

  • Проверять дублирование записей, чтобы не засорять сайт.
  • Добавлять ссылку на оригинал для уважения авторских прав.
  • Фильтровать контент, чтобы не импортировать вредоносный код.
  • Настраивать периодичность импорта в зависимости от частоты обновления источника и нагрузки на сайт.

Если вы используете собственный код, обязательно тестируйте его на локальном сервере, чтобы избежать сбоев на живом сайте.

Интеграция с плагином Clearfy Pro для оптимизации

Для улучшения производительности сайта при регулярном импорте рекомендуется использовать плагин Clearfy Pro. Он помогает оптимизировать загрузку, отключать лишние скрипты и улучшать кеширование, что особенно важно при автоматических процессах.

Итоговые рекомендации

Автоматический импорт постов из RSS — мощный инструмент для расширения контента сайта. При правильной настройке и соблюдении авторских прав это существенно экономит время и повышает ценность ресурса. Используйте встроенный SimplePie для кастомных решений или надежные плагины, как WP RSS Aggregator, и не забывайте о безопасности и оптимизации.

Как создать автоматический импорт данных из Excel в WordPress
19.03.2026
Как избежать конфликтов между WooCommerce и плагинами кеширования
21.05.2026
Автоматическое удаление старых записей в WordPress через шорткод
11.04.2026
Как создать автоматический сбор отзывов в WordPress
16.02.2026
Как использовать WP-Cron для задач на выполнение по расписанию в WordPress
16.05.2026