wpmail.ru wordpress WP Mail

Как создать автоматическую подписку на новости WordPress

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

Почему стоит добавить автоматическую подписку на новости в WordPress

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

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

Основные функции системы автоматической подписки

  • Автоматическая отправка уведомлений о новых статьях или новостях;
  • Возможность подписки через виджет, форму или короткий код;
  • Управление подписчиками и возможность отписки;
  • Интеграция с почтовыми сервисами для надежной доставки писем;
  • Настройка шаблонов писем и персонализация контента.

Как реализовать автоматическую подписку на новости с помощью плагинов

Самый простой способ — использовать готовые плагины для подписки. Рассмотрим несколько популярных решений, которые хорошо подходят для сайтов на WordPress.

1. Плагин MailPoet

MailPoet — мощный плагин для создания и управления рассылками прямо в админке WordPress. Он позволяет автоматически отправлять письма о новых публикациях подписчикам, создавать красивые формы подписки и управлять списками адресов.

После установки MailPoet достаточно создать новую рассылку с автоматической отправкой новых постов. Для этого в разделе "Рассылки" выберите "Создать автоматическую" и настройте триггер на публикацию новых материалов.

2. Плагин Newsletter

Newsletter — бесплатный и удобный плагин, который позволяет создавать формы подписки и рассылать письма. В нем есть возможность настроить автоматическую отправку новостей, что отлично подходит для блогов и новостных сайтов.

Для настройки автоматической подписки перейдите в настройки плагина, создайте новую кампанию и выберите тип "Автоматическая" с триггером на публикацию новых постов.

3. Интеграция с сервисом Sendinblue через плагин

Если вы хотите использовать сторонний сервис рассылок, например Sendinblue, то для этого есть официальные плагины, которые интегрируются с WordPress и позволяют строить автоматизированные цепочки писем, в том числе уведомления о новых постах на сайте.

Как создать автоматическую подписку на новости WordPress с помощью кода

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

1. Создаем форму подписки с помощью шорткода

Добавим в functions.php темы следующий код для регистрации шорткода формы подписки:

function wpmailru_subscribe_form() {
    if ( isset($_POST['wpmailru_email']) && is_email($_POST['wpmailru_email']) ) {
        $email = sanitize_email($_POST['wpmailru_email']);
        wpmailru_save_subscriber($email);
        echo '<p>Спасибо за подписку!</p>';
    }
    ob_start();
    ?>
    <form method="post">
        <input type="email" name="wpmailru_email" placeholder="Ваш email" required />
        <button type="submit">Подписаться</button>
    </form>
    <?php
    return ob_get_clean();
}
add_shortcode('wpmailru_subscribe', 'wpmailru_subscribe_form');

Этот код создает простую форму для ввода email, которую можно вставить в любую страницу с помощью шорткода [wpmailru_subscribe].

2. Сохраняем email подписчиков в базу данных

Для хранения подписчиков создадим отдельную таблицу и функцию сохранения:

function wpmailru_create_subscribers_table() {
    global $wpdb;
    $table_name = $wpdb->prefix . 'wpmailru_subscribers';
    $charset_collate = $wpdb->get_charset_collate();
    
    $sql = "CREATE TABLE IF NOT EXISTS $table_name (
      id mediumint(9) NOT NULL AUTO_INCREMENT,
      email varchar(100) NOT NULL,
      subscribed datetime DEFAULT CURRENT_TIMESTAMP NOT NULL,
      PRIMARY KEY  (id),
      UNIQUE KEY email (email)
    ) $charset_collate;";

    require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
    dbDelta($sql);
}
register_activation_hook(__FILE__, 'wpmailru_create_subscribers_table');

function wpmailru_save_subscriber($email) {
    global $wpdb;
    $table_name = $wpdb->prefix . 'wpmailru_subscribers';
    $wpdb->replace($table_name, array('email' => $email));
}

Этот код создаст таблицу при активации плагина (или можно выполнить вручную) и будет сохранять email подписчиков без дублирования.

3. Автоматическая отправка писем при публикации новых постов

Используем хук publish_post для отправки писем всем подписчикам:

function wpmailru_send_new_post_notification($post_id) {
    if ( wp_is_post_revision($post_id) ) {
        return;
    }

    $post = get_post($post_id);
    if ($post->post_status !== 'publish') {
        return;
    }

    global $wpdb;
    $table_name = $wpdb->prefix . 'wpmailru_subscribers';
    $subscribers = $wpdb->get_col("SELECT email FROM $table_name");

    if (empty($subscribers)) {
        return;
    }

    $subject = 'Новая статья на сайте: ' . $post->post_title;
    $message = 'Здравствуйте!<br>На нашем сайте опубликована новая статья: <a href="' . get_permalink($post_id) . '">' . $post->post_title . '</a>.<br>Приятного чтения!';
    $headers = array('Content-Type: text/html; charset=UTF-8');

    foreach ($subscribers as $email) {
        wp_mail($email, $subject, $message, $headers);
    }
}
add_action('publish_post', 'wpmailru_send_new_post_notification');

Так при публикации новой записи всем подписчикам будет отправлено письмо с анонсом и ссылкой на статью.

Рекомендации по улучшению системы подписки

Используйте сервисы SMTP для надежной отправки

Стандартная функция wp_mail() может не всегда корректно отправлять письма, особенно на больших объемах. Для надежности рекомендуется настроить SMTP-сервер, например, через WP SMTP, что значительно повысит доставляемость писем.

Добавьте возможность отписки

Согласно законодательству и этикету email маркетинга, обязательно предоставьте пользователям возможность отписаться. Для этого можно добавить уникальную ссылку в письмо, которая будет удалять email из базы.

Используйте кеширование и отложенную отправку

Если подписчиков много, отправка писем в цикле может нагрузить сервер. Для оптимизации можно использовать очередь, задачи wp_cron или интеграцию с внешними сервисами рассылок.

Выводы и лучшие практики для автоматической подписки на новости WordPress

Автоматическая подписка — мощный инструмент для удержания аудитории. Для большинства проектов подойдет настройка через проверенные плагины, такие как MailPoet или Newsletter, они обеспечивают удобный интерфейс и надежность.

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

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

×
WPRemark
Внимание Внимание Внимание Внимание
-15%

на WPRemark плагин WordPress

Прокачай свой сайт! ⋙