WordPress Туториалы

Как настроить email-подписку на сайте WordPress с помощью MailPoet

Email-подписка — отличный способ удержать внимание читателей и возвращать их на сайт каждый раз, когда появляются новые публикации. Существует много решений для email-подписок: Jetpack, Newsletter, FluentCRM и другие. В этой статье мы используем MailPoet. Он позволяет создавать формы подписки, управлять списками читателей и автоматически рассылать обновления.

Настройка MailPoet

После установки и активации плагина MailPoet, WordPress предложит пройти короткую настройку — нажмите Begin Setup и выполните три шага мастера.

WordPress

Укажите отправителя писем — имя и адрес электронной почты, от которого будут приходить письма подписчикам. Подтвердите настройки конфиденциальности и данных. Подключите ваш MailPoet-аккаунт — нажмите Connect MailPoet — это создаст или свяжет ваш сайт с сервисом MailPoet, обеспечивая надежную доставку писем во входящие, а не в спам. На бесплатном тарифе можно отправлять письма ограниченному числу подписчиков, при необходимости тариф можно расширить позже.

WordPress

Регистрация занимает всего пару минут и включает несколько шагов: указание адреса электронной почты, имени сайта и подтверждение учетной записи. На последнем шаге вам нужно активировать выбранный тариф, вставив предоставленный API-ключ в форму мастера настройки в WordPress. После этого следуйте инструкциям по настройке службы отправки MailPoet, чтобы письма доставлялись во входящие, а не в спам.

WordPress

WordPress

После успешного подключения аккаунта вы увидите сообщение MailPoet account connected. Нажмите Start using MailPoet, чтобы сразу перейти к панели управления плагином.

Создание формы подписки

Создайте форму подписки через MailPoet → Forms → Add New Form. При создании формы можно выбрать готовый шаблон из библиотеки MailPoet или создать форму с нуля. Готовый шаблон уже содержит поле для email и кнопку «Подписаться», его можно редактировать с помощью drag-and-drop редактора, изменяя текст, цвета, кнопки и другие элементы. Если вы создаёте форму с нуля, добавляйте блоки вручную — поле для email, кнопку отправки, текстовые блоки и изображения, оформляя форму в соответствии с дизайном сайта.

WordPress

После настройки формы в редакторе MailPoet выберите список рассылки и другие параметры в сайдбаре настроек, например: имя формы, список получателей, сообщение после отправки, стили и размещение формы.

WordPress

В разделе Form Placement можно выбрать разные варианты отображения формы, например, поп-ап, slide-in или под страницей. В этом случае форма будет автоматически показываться в выбранной позиции на сайте.

WordPress

Если вы хотите использовать форму через шорткод, например, вставить её в виджет сайдбара или Gutenberg-блок, необходимо выбрать вариант Others (widget). Только тогда при редактировании формы появится шорткод, например [mailpoet_form id=»1″], который можно скопировать и вставить в нужное место на сайте.

WordPress

Для виджетов сайдбара используйте блок Shortcode или Custom HTML, вставив скопированный шорткод формы. Для Gutenberg-страниц просто добавьте блок MailPoet Form или вставьте шорткод напрямую.

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

В MailPoet можно создавать несколько типов писем: одиночные рассылки, автоматические уведомления о новых публикациях, приветственные письма для новых подписчиков и т.д. В этой статье мы будем использовать автоматическое письмо с уведомлением о последних публикациях (Latest Post Notifications). Для уведомления подписчиков о новых статьях сайта выберите этот тип письма (MailPoet → Emails → New Email → Latest Post Notifications).

WordPress

После того как вы выбрали создание нового автоматического письма, первым делом появится окно с вопросом “When to send this post notification email?” — здесь нужно указать, как часто MailPoet будет проверять новые публикации и отправлять письма. Например, можно выбрать Once a day at 12:00 am или Immediately after a new post is published. После выбора частоты нажмите Next.

Затем откроется экран выбора шаблона.

WordPress

Выберите подходящий вариант и отредактируйте его в удобном drag-and-drop-редакторе: добавьте логотип, изображения, кнопки, измените цвета и текст, чтобы письмо выглядело в стиле вашего сайта. После завершения редактирования нажмите Next.

На последнем шаге настройте параметры рассылки: укажите список получателей (Send to), частоту отправки (Select a frequency), имя и адрес отправителя (Sender). Если адрес не авторизован, нажмите Authorize it now. Здесь же можно задать параметры аналитики (Google Analytics Campaign) и адрес для ответов (Reply-to).

Когда всё готово, нажмите Activate, чтобы включить автоматическую рассылку. MailPoet будет отслеживать новые публикации сайта и отправлять уведомления подписчикам.

Заключение

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


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


23 полезных трюкa как ускорить свой сайт на WordPress

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

1. Выбирайте хороший хостинг

Выбор хостинга является, пожалуй, главным критерием успешности вашего сайта. Если у вас паршивый хостинг, то что бы вы не делали, это не поможет вам ускорить ваш сайт. Рекомендуем выбирать хостинги с поддержкой PHP 8+, HTTPS, SSD и встроенного кэширования. Мы советуем вам для начала попробовать SiteGround – этот хостинг находится в списке официально рекомендуемых WordPress’ом и известен высоким качеством предоставляемых услуг. Если финансы позволяют, то можете попробовать WPEngine, который может помочь с настройкой WordPress.

2. Пользуйтесь плагинами кэширования

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

Этот процесс может замедлить работу вашего сайта, когда несколько пользователей смотрят одну и ту же страницу. Решение проблемы это плагин кэширования. Вместо генерирования каждой страницы налету, плагин кэширования будет демонстрировать вашему пользователю кэшированную версию страницы. Мы рекомендуем WP Super Cache, WP Rocket или LiteSpeed Cache в качестве такого плагина.

3. Пользуйтесь CDN

Многие файлы на вашем сайте являются статичными: изображения, CSS и JavaScript. Эти файлы обычно не меняются. Однако когда браузер загружает вашу страницу, эти файлы могут помешать его отображению другим пользователям. CDN или content delivery networks решают эту проблему, предоставляя ваши файлы со своих серверов. Это освобождает место на сервере, делает сайт быстрее и улучшает опыт использования.

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

4. Оптимизируйте изображения

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

Советуем использовать современные форматы изображений, такие как WebP и AVIF. Они позволяют значительно уменьшить размер файла при сохранении высокого качества. Плагины вроде ShortPixel и Imagify могут автоматически оптимизировать все изображения на сайте, экономя ваш трафик и ускоряя загрузку страниц.

5. Пользуйтесь оптимизированными шаблонами

Подбирая шаблон для своего сайта, обратите особое внимание на его оптимизацию. Магазины премиум-шаблонов вроде StudioPress и Themify  предлагают шаблоны, которые не только отлично выполнены, но еще и оптимизированы для их быстрой работы. Лёгкие и хорошо оптимизированные темы обеспечивают быстрый рендер страниц. Рекомендуемые варианты: GeneratePress, Kadence, Astra.

6. Выбирайте быстрые слайдеры

Слайдеры могут замедлять сайт, особенно если они тяжёлые и используют много JavaScript. Для минимальной нагрузки лучше использовать блоки Gutenberg для слайдеров или лёгкие плагины, такие как Smart Slider 3, которые оптимизированы по скорости.

7. Используйте выдержки на главной странице и в архивах

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

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

WordPress

8. Делите длиннопосты на страницы

Если вы выкладываете большие статьи с огромным количеством изображений, лучше разбивайте их на несколько страниц. Причем у WordPress имеется для этого встроенная возможность. Просто добавьте тег <!--nextpage--> в том месте, где хотели бы перенести текст на следующую страницу.

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

WordPress

9. Разбейте комментарии на страницы

Некоторые ваши посты соберут больше комментариев, чем другие. Если вы показываете все комментарии на одной странице, это увеличивает время загрузки. В WordPress есть встроенное решение и для этой проблемы. Просто зайдите в Settings → Discussion и отметьте ячейку Break comments into pages.

WordPress

Разбиение комментариев также делает страницы более удобными для пользователей, позволяя быстрее находить интересующие ответы.

10. Избавляйтесь от неиспользуемых плагинов

Многие начинающие пользователи устанавливают на свой сайт слишком много плагинов, которые даже толком не используют, а потом забывают их удалить. Это может вызвать проблему, поскольку все эти плагины раздувают размер ваших бэкапов, что в свою очередь, приводит к замедленной работе вашего сайта. Пересмотрите установленные на вашем сайте плагины и удалите те, которыми не пользуетесь.

11. Обновляйте свой сайт

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

12. Не загружайте видео на WordPress

WordPress

Вы можете напрямую загружать видео на свой сайт WordPress и это автоматически отобразит их в плеере HTML5, но вам НИКОГДА не стоит этого делать. Размещение роликов будет стоить вам трафик и может раздуть размер ваших бэкапов, что усложнит восстановление сайта в случае непредвиденных обстоятельств. Лучше пользуйтесь специальными сервисами для хранения видео вроде Youtube, Vimeo, или облачными платформами вроде Cloudflare Stream, которые обеспечивают высокую скорость воспроизведения и не нагружают сервер.

13. Понизьте внешние запросы HTTP

WordPress

Многие плагины и шаблоны WordPress загружают скрипты и изображения из внешних ресурсов, таких как библиотеки Google, Facebook SDK, сервисы аналитики и другие. Использование таких внешних ресурсов часто ускоряет отображение контента, потому что они загружаются с быстрых серверов, оптимизированных для доставки. Однако если ваш сайт делает слишком много таких запросов, это может замедлить работу, особенно для посетителей с медленным интернетом. В таких случаях полезно хранить на своём сайте те файлы, которые нужны для того, чтобы страницы быстро отображались: например, шрифты сайта, важные скрипты для меню, слайдеров, галерей или других видимых элементов. Для остальных файлов можно продолжать использовать внешние ресурсы, особенно если это библиотеки и сервисы, которые редко меняются.

14. Уменьшите вызовы баз данных

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

Пример старого кода в шаблоне:

<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
<head profile="http://gmpg.org/xfn/11">
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />

Здесь WordPress динамически вставляет тип страницы и кодировку текста. Но на практике почти всегда это будет text/html; charset=UTF-8.

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

<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head profile="http://gmpg.org/xfn/11">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

Так вы немного ускорите загрузку страниц, при этом функциональность сайта останется такой же.

*Если вы используете актуальные темы, большинство из них уже оптимизировано и таких лишних обращений почти нет. Этот трюк полезен, если вы работаете со старой или сильно кастомизированной темой.

15. Оптимизируйте базу данных WordPress

Попользовавшись WordPress какое-то время, в вашей базе данных накопится много информации, которая вам скорее всего уже больше не понадобится. Это можно легко исправить при помощи плагина WP-Sweep или WP-Optimize, который позволяет почистить базу данных, удаляя лишнюю информацию, очищая ревизии постов, спам-комментарии и временные данные. Регулярная очистка базы данных ускоряет сайт и уменьшает размер бэкапов.

16. Ограничьте повторные редакции постов

Повторные редакции постов занимают место в вашей базе данных WordPress. Некоторые пользователи полагают, что они также могут влиять на запросы баз данных, которые отправляют плагины. Вы можете ограничить кол-во повторных редакций, просто добавив следующую строку кода в файл wp-config.php

define( ‘WP_POST_REVISIONS’, 4 );

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

17. Отключите хотлинкинг и личинг вашего контента

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

#disable hotlinking of images with forbidden or custom image option
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ – [NC,F,L]

18. Пользуйтесь более быстрым плагином галерей

WordPress

Если ваш сайт посвящен фотографированию или вы его используете в качестве портфолио, то вам понадобится плагин галереи, чтобы отображать изображения в красивой манере. Поэтому очень важно пользоваться плагином, который должным образом оптимизирован. Мы советуем вам Envira Gallery, который создаёт не только потрясающе красивые, но и быстро загружающиеся галереи.

Можно также использовать встроенные блоки Gutenberg, которые позволяют создавать галереи без лишнего JavaScript, минимизируя нагрузку на сайт и ускоряя его работу.

19. Используйте ленивую загрузку (Lazy Loading)

WordPress по умолчанию лениво подгружает изображения, то есть они загружаются только тогда, когда пользователь доскроллит до них, что ускоряет открытие страниц. Однако для видео, iframe и некоторых галерей, которые не используют встроенную ленивую загрузку, стоит подключить специальные плагины, например a3 Lazy Load или WP Rocket. Такой подход снижает нагрузку на сервер, ускоряет первую видимую загрузку страницы и делает сайт более комфортным для посетителей.

20. Оптимизируйте шрифты

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

21. Минимизируйте и объединяйте CSS и JavaScript

Множество отдельных CSS и JS-файлов увеличивает количество запросов к серверу и замедляет загрузку страниц. Минификация и объединение файлов позволяют уменьшить размер и количество запросов. Плагины вроде Autoptimize или функции WP Rocket могут автоматически объединять и сжимать скрипты и стили, ускоряя загрузку страниц и делая сайт более плавным для пользователя.

22. Контролируйте блоки Gutenberg и сторонние скрипты

Редактор блоков WordPress (Gutenberg) предоставляет широкие возможности, но лишние блоки могут создавать ненужную нагрузку на сайт и замедлять его загрузку. Убедитесь, что используете только необходимые блоки, чтобы сайт работал быстрее.

Отдельные скрипты плагинов (CSS и JavaScript) также могут замедлять страницы, особенно если они загружаются на всех страницах, где не нужны. Чтобы уменьшить нагрузку, подключайте скрипты выборочно — только на тех страницах, где они реально используются. Для этого удобно использовать плагины Asset CleanUp или Perfmatters, которые позволяют выбрать, где загружать каждый скрипт.

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

23. Следите за Core Web Vitals

Показатели Core Web Vitals – это метрики скорости и интерактивности страниц, которые Google учитывает при ранжировании. Сюда входят: время загрузки основного контента, задержка взаимодействия и стабильность визуального контента. Используйте плагины для анализа и оптимизации, исправляйте большие блоки CSS/JS, оптимизируйте изображения и шрифты. Улучшение этих показателей делает сайт быстрее, удобнее и повышает позиции в поисковой выдаче.

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


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


Как добавить свои администраторские уведомления в WordPress

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

Зачем и когда нужно использовать уведомления?

WordPress

Если вы работаете с сайтом для клиентов, которые не слишком хорошо знакомы с WordPress, то вы можете добавлять администраторские уведомления, чтобы отображать полезную информацию по всей админке. Это особенно полезно, если вы создаёте сайт для команды авторов: уведомления помогут новичкам быстрее освоиться. Однако мы советуем подходить к этому делу осторожно, поскольку они могут быть очень надоедливыми. Теперь давайте посмотрим как их можно включить.

Способ 1. Добавляем свои уведомления вручную

Этот способ требует от вас добавлять код на сайт WordPress. Вам нужно вставить следующий кусок в файл functions.php вашей темы или в индивидуальный плагин:

function general_admin_notice() {
    global $pagenow;

    if ( $pagenow === 'options-general.php' ) {
        echo '
        <div class="notice notice-warning is-dismissible">
            <p>This notice appears on the settings page.</p>
        </div>
        ';
    }
}
add_action('admin_notices', 'general_admin_notice');

Этот код отображает уведомление на странице настроек. Так будут выглядеть ваши уведомления в админке:

WordPress

Если вы изучите код, то заметите, что у нас есть переменная $pagenow, которая обнаруживает текущую страницу. После этого мы добавили условие, которое проверяет подходит ли страница для отображения уведомления. Если подходит, то мы показываем уведомление, упакованное в элемент <div> с классами интерфейса админки WordPress. Доступны классы: notice-error, notice-warningnotice-success, notice-info. А класс is-dismissible добавляет кнопку закрытия уведомления.

Помимо проверки страницы вы можете добавлять самые разные условия для отображения уведомлений. Например, показать уведомление только пользователям с ролью Author:

function author_admin_notice() {
    global $pagenow;

    if ( $pagenow === 'index.php' ) {
        $user = wp_get_current_user();

        if ( in_array( 'author', (array) $user->roles, true ) ) {
            echo '
            <div class="notice notice-info is-dismissible">
                <p>Click on <a href="edit.php">Posts</a> to start writing.</p>
            </div>
            ';
        }
    }
}
add_action('admin_notices', 'author_admin_notice');

В данном случае добавлена дополнительная проверка роли пользователя. Такое уведомление появится только у авторов.

Можете свободно экспериментировать с различными фильтрами и условиями.

Способ 2. Добавляем уведомления с помощью плагина

Этот способ проще, поскольку не требует от вас использования кода. Отлично с этой задачей справляется плагин WP Custom Admin Interface. Однако в бесплатной версии этого плагина есть ограничения: вы можете создать только одно уведомление. Если вы хотите создавать несколько уведомлений, то стоит рассмотреть Custom Admin Interface Pro, которая снимает эти ограничения и открывает весь функционал.

После установки и активации плагина в админке появится новое меню Custom Admin Interface → Admin Notices, где можно создавать и настраивать уведомления для любых пользователей и разделов. Вы увидите нечто вроде редактора постов.

WordPress

В поле Notice Content вы указываете текст уведомления. Здесь можно использовать специальные теги вроде [CURRENT_YEAR], [WEBSITE_TITLE], [WEBSITE_TAGLINE], [WEBSITE_URL], [ADMIN_EMAIL_ADDRESS], а также теги, связанные с пользователем: [USER_FIRST_NAME], [USER_LAST_NAME], [USER_NICKNAME] и [USER_EMAIL]. Можно добавлять медиа, визуальные элементы или код.

Далее можно выбрать цвет уведомления через Admin Notice Color и настроить дату окончания действия через Admin Notice End Date в формате YYYY-MM-DD. При желании уведомление можно сделать dismissable, чтобы пользователи могли его закрывать. Также есть возможность исключений: уведомление показывается всем пользователям, кроме тех, кого вы добавите в раздел Add an exception case. После внесения всех настроек нужно нажать Save All Settings, чтобы уведомление стало активным.

Помимо возможности добавлять собственные уведомления, WP Custom Admin Interface предлагает широкий спектр возможностей, таких как персонализировать меню, добавлять собственные виджеты, упрощать интерфейс для авторов или клиентов и управлять доступом к разделам админки.


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


Как спрятать под замок контент сайта

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

Что такое замкнутый контент и зачем он нужен?

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

WordPress

При неправильном использовании он может вызвать у пользователей раздражение, однако при грамотной эксплуатации это может привести к росту продаж. Скрывание контента эффективно в тех случаях, когда речь идет о чем-то ценном. Например, бесплатном курсе, электронной книге и так далее. Здесь происходит такой же самый психологический трюк как и в случае с content upgrades. Пользователи не будут против выполнить какую-нибудь мелочь в обмен на ценный для них контент.

Что нужно для скрывания контента на WordPress?

В этой инструкции мы с вами будем пользоваться OptinMonster, который на данный момент остаётся одним из лучших решений на рынке. Однако вам понадобится тариф plus или pro, чтобы вы могли прятать контент.

Добавление спрятанного контента

Первым чередом надо установить и активировать плагин OptinMonster. Этот плагин служит всего лишь связующим звеном между вашим сайтом и аккаунтом в системе OptinMonster. После активации плагина вы будете автоматически перенаправлены на страницу OptinMonster для подключения вашего сайта. Здесь плагин создаст безопасное соединение с вашим аккаунтом. После завершения настройки вы попадёте в раздел Campaigns (https://app.optinmonster.com/campaigns/), где можно создавать новые optin-формы, управлять существующими кампаниями и настраивать блокировку контента для вашего сайта.

Чтобы создать кампанию с блокировкой контента, нажмите Create New Campaign. Откроется окно с приветствием и выбором типа кампании. Вам предлагаются три основных варианта:

  • Playbooks — готовые, проверенные кампании, вдохновлённые успешными брендами.
  • Templates — сотни легко настраиваемых шаблонов с высоким коэффициентом конверсии.
  • Canvas — пустой шаблон для полной кастомизации с нуля.

WordPress

Выберите подходящий вариант и продолжите настройку кампании. Для блокировки контента рекомендуется использовать тип After Post / Inline, если вы хотите скрывать материал на страницах или постах.

Мы, например, нашли удобный шаблон Unlock Gated Content в библиотеке готовых решений — он специально предназначен для закрытого контента и отлично подходит для таких задач.

WordPress

Выберите нужный шаблон нажав Use Template.

Далее появится окно с настройками кампании:

  • What do you want to call your inline campaign? — введите название кампании.
  • Which website(s) do you want to load this campaign on? — выберите сайт из выпадающего списка или добавьте новый.

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

При добавлении домена важно понимать разницу между:

  • Top-level domain — например, mysite.com — это основной домен сайта. В этом случае кампания будет отображаться только на главном домене, но не будет работать на поддоменах, таких как blog.mysite.com.
  • Sub-domain — например, blog.mysite.com — используется для отдельных разделов или проектов. Кампания в этом случае будет работать только на указанном поддомене и не будет доступна на основном домене или других поддоменах.
  • Wildcard subdomain — например, *.mysite.com — охватывает все поддомены вашего сайта. Это удобно, если вы хотите использовать одну и ту же кампанию на нескольких поддоменах одновременно. Однако кампания при этом не будет работать на основном домене, если вы его явно не добавите отдельно.

После этого откроется визуальный drag-and-drop редактор, в котором можно гибко настроить внешний вид формы: изменить цвета, тексты, кнопки и добавить дополнительные элементы. Это позволяет адаптировать кампанию под дизайн вашего сайта без необходимости писать код.

WordPress

После завершения визуального редактирования кампании вы автоматически попадёте в раздел Display Rules → Conditions. Здесь вы можете выбрать, на каких страницах сайта будет показываться всплывающее окно с формой — например, на всех страницах WordPress-сайта или только на отдельных.

WordPress

После того как вы задали условия отображения, нажмите кнопку “Done? Go To Actions”, чтобы перейти к следующему шагу.

На следующем экране откроется раздел Display Rules → Actions, где можно добавить анимацию появления и звуковое сопровождение через MonsterEffects.

Далее прокрутите вниз до секции Lock Content, где можно включить блокировку контента, активировав переключатель Enable Content Locking.

WordPress

Здесь доступны два варианта поведения:

  • Blur — контент страницы размывается, и пользователи не могут его прочитать, пока не выполнят нужное действие.
  • Remove — контент полностью скрывается.

После того как посетитель выполнит требуемое действие, OptinMonster автоматически откроет доступ к скрытому контенту.

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

После настройки действий нажмите кнопку Go To Summary, чтобы перейти к сводке кампании и просмотреть логику перед публикацией, убедившись, что условия показа заданы правильно. Не забудьте сохранить изменения через кнопку Save в правом верхнем углу — это необязательно после каждого раздела, но рекомендуется, чтобы не потерять настройки.

Далее при необходимости откройте раздел Integration. Здесь можно настроить теги, сопоставить поля формы и при желании подключить сторонний сервис e-mail маркетинга. Если вы не используете сторонние сервисы, можно оставить настройки Monster Leads по умолчанию.

В разделе Analytics можно подключить сервисы аналитики, например Google Analytics, чтобы отслеживать эффективность кампаний и поведение пользователей.

Когда все настройки кампании завершены, перейдите в раздел Publish. Сначала убедитесь, что ваш сайт корректно подключен к OptinMonster с помощью опции Verify.

WordPress

После успешной проверки статус сайта изменится на Connected.

Затем выберите платформу WordPress.

WordPress

После того как все параметры проверены и сайт подключен, нажмите Publish.

WordPress

После публикации кампании все её настройки продолжают регулироваться в приложении OptinMonster. В WordPress через установленный плагин вы сможете видеть подключённые кампании, при необходимости вставлять шорткоды для ручного размещения inline-кампаний и проверять работу контента на сайте.

Для настройки способа отображения inline-кампаний с блокировкой контента откройте WordPress и перейдите в OptinMonster → Campaigns, затем выберите нужную кампанию и нажмите Output Settings.

WordPress

В разделе настроек кампании вы увидите блок WordPess Output Settings:

  • Automatic — блокировка контента происходит автоматически после указанного количества слов или абзацев. Вы можете задать количество абзацев или слов, после которых контент будет размываться или скрываться. Этот режим позволяет скрывать контент на всех постах без ручного редактирования.
  • Manual — вы добавляете шорткод на каждую страницу или пост, где хотите скрыть контент. Для этого скопируйте предоставленный шорткод и вставьте его через блок Shortcode в редакторе WordPress на нужных страницах или постах. Это даёт точный контроль над тем, какой контент будет заблокирован.

WordPress

Теперь вы можете открыть страницу с заблокированным контентом в браузере. Вы увидите, что контент размытый или скрытый. Как только пользователь выполнит требуемое действие (например, введёт email), скрытый материал будет отображён.


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


Как дать пользователям подписываться на авторов в WordPress?

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

Зачем добавлять подписку на авторов?

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

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

Каждый автор на вашем сайте имеет собственный RSS фид. Его адрес имеет приблизительно следующий вид:

https://example.com/author/tom/feed/

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

WordPress

Добавляем автоматическую ссылку на подписку

Вы можете автоматически сгенерировать ссылку и использовать shortcode, чтобы вручную вставлять её в посты. Для этого добавьте код в файл functions.php вашей темы или в собственный плагин, созданный специально для вашего сайта.

// Function to generate author's RSS feed link
function wpb_author_feed() {
    $author_id = get_the_author_meta('ID');
    $author_feed = get_author_posts_url($author_id) . 'feed/';
    $author_name = get_the_author_meta('display_name');

    return '<a href="' . esc_url($author_feed) . '" class="author-subscribe-link">'
           . 'Подписаться на посты ' . esc_html($author_name) . '</a>';
}

// Create a shortcode to display the link
add_shortcode('authorfeed', 'wpb_author_feed');

// Enable shortcode execution in WordPress text and block widgets
add_filter('widget_text_content', 'do_shortcode'); 
add_filter('widget_block_content', 'do_shortcode');

Теперь можете использовать в своих постах шорткод [authorfeed] и у вас автоматически сгенерируется ссылка на RSS фид автора поста. Можете менять текст ссылки как вам угодно.

WordPress

Обратите внимание, что RSS-ссылка не создаёт реальную подписку — она просто открывает XML-фид автора. Чтобы подписаться, пользователю нужно добавить эту ссылку в своё приложение для чтения новостей (например, Feedly, Inoreader или NewsBlur).

Добавляем ссылку подписки на автора в сайдбаре

Теперь, когда шорткод готов, можно добавить ссылку на RSS-подписку в сайдбаре вашего сайта. Перейдите в раздел Appearance > Widgets и добавьте текстовый или Custom HTML виджет в область сайдбара, где вы хотите разместить ссылку. В текстовое поле вставьте шорткод [authorfeed], после этого нажмите Save.

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

Чтобы всё работало правильно, необходимо ограничить показ виджета только страницами записей.
Это можно сделать следующими способами:

  • Через редактор блоков виджетов (Gutenberg Widgets):
    при добавлении блока “Shortcode” или “HTML” в область виджетов, нажмите на него → в боковой панели выберите “Условия показа” (если поддерживается вашей темой или плагином, например Widget Options или Block Visibility).
    Укажите условие: Показывать только на отдельных записях (Single Posts).

  • С помощью плагина Widget Options:
    установите Widget Options, откройте настройки нужного виджета и отметьте пункт “Show on → Post Types (отмечен значком булавки) → Posts”.

WordPress

Теперь при просмотре любой статьи в сайдбаре будет отображаться корректная ссылка на RSS-фид именно того автора, который написал пост. Можете использовать немного CSS, чтобы создать красивую кнопку или добавить иконку для подписки.

Использование RSS-ссылок остаётся самым простым и надёжным способом позволить пользователям подписываться на конкретного автора: каждый читатель получает обновления именно того автора, который ему интересен, и никаких сложных настроек или дополнительных плагинов не требуется. В то же время современные методы, такие как подписка по электронной почте или push-уведомления, становятся всё более популярными и широко используемыми для общих подписок на сайт. Подробно о том, как реализовать подписку через e-mail и push, будет рассказано в отдельных статьях.


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


Как использовать WP-CLI для управления WordPress

WP-CLI — это мощный инструмент командной строки, который позволяет управлять сайтом WordPress без использования браузера. С его помощью можно быстро обновлять плагины, работать с записями, управлять пользователями, выполнять резервное копирование и автоматизировать рутинные задачи.

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

Почему стоит использовать WP-CLI

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

С WP-CLI всё это можно делать в несколько раз быстрее, просто набирая команды в терминале. Это удобно, если вы:

  • обслуживаете несколько сайтов и хотите ускорить рутинные операции;
  • автоматизируете процессы (скрипты, cron);
  • работаете на staging или production-серверах через SSH, где нет доступа к админке или нужно быстро решать проблемы;
  • хотите выполнять массовые операции без кликов в интерфейсе.

Для локальной разработки WP-CLI также идеально подходит: вы можете тестировать команды на локальном сервере (например, WAMP) без риска повредить живой сайт. Все команды будут выполняться на вашем компьютере, а не на реальном сервере.

Установка WP-CLI на локальном сервере (WAMP)

Для удобства создайте отдельную папку для WP-CLI, например, C:\wp-cli.  Это позволит использовать WP-CLI глобально и не привязывать его к конкретному сайту. В командной строке (Command Prompt) создайте папку и перейдите в неё:

mkdir C:\wp-cli
cd C:\wp-cli

Находясь в этой папке, скачайте WP-CLI с помощью команды:

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Иногда скачанный файл может иметь расширение .txt, например wp-cli.phar.txt. В этом случае переименуйте его обратно в wp-cli.phar:

rename wp-cli.phar.txt wp-cli.phar

Проверить работу WP-CLI можно командой:

php C:\wp-cli\wp-cli.phar --info

Эта команда выведет информацию о версии WP-CLI, PHP и вашей рабочей среде.

Чтобы не вводить полный путь к .phar каждый раз, можно создать batch-файл wp.bat в той же папке с содержимым:

@ECHO OFF
php "C:\wp-cli\wp-cli.phar" %*

После этого команду можно будет запускать просто:

wp --info

*На Windows 10/11 иногда batch-файл не корректно обрабатывает %*, поэтому для стабильной работы удобнее использовать прямой вызов .phar через PHP.

Установка WP-CLI на живой сайт через SSH

Подключитесь к серверу через SSH:

Перейдите в корень WordPress, где находится файл wp-config.php:

cd /path/to/wordpress

*Замените /path/to/wordpress на реальный путь к вашей установке WordPress.

Если WP-CLI установлен глобально, проверить работу WP-CLI можно командой:

wp --info
Если глобальная установка не выполнена, используйте прямой вызов .phar:
php wp-cli.phar --info

Работа с WP-CLI

WP-CLI всегда должен запускаться из корня сайта, где находится wp-config.php.

На локальном сервере Windows это обычно:

C:\wamp64\www\mysite

На live-сервере через SSH:

cd /path/to/wordpress

*Замените mysite или /path/to/wordpress на реальные имена ваших папок.

Полезные команды WP-CLI

Обновление ядра WordPress

wp core update

Установка и активация плагина

wp plugin install contact-form-7 --activate

*Замените contact-form-7 на название вашего плагина.

Установка и активация темы

wp theme install twentytwentyfive --activate

*Замените twentytwentyfive на нужную тему.

Добавление нового пользователя

wp user create editor [email protected] --role=editor --user_pass=123456

*Замените editor, [email protected] и 123456 на реальные имя пользователя, email и пароль, которые вы хотите использовать.

Резервная копия базы данных

wp db export backup.sql

Импорт базы данных

wp db import backup.sql

Деактивация сбойного плагина

wp plugin deactivate problem-plugin

*Замените problem-plugin на название вашего плагина.

Итог

Использование WP-CLI позволяет:

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

Эти возможности делают WP-CLI особенно полезным для разработчиков, администраторов и при работе с несколькими сайтами или большими проектами.


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


Как найти и заменять текст в вашей базе данных WordPress одним щелчком

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

Когда вам может понадобиться поиск и замены в базе данных WordPress

Допустим, что вы добавили определенный текст или адрес в некоторое количество своих постов. Вы не знаете в какие именно посты вы его добавили, но знаете, что этих постов очень много. Вы можете вручную проверять посты один за другим, убить на это кучу времени и, скорее всего, упустить какие-нибудь вещи. С помощью команды по поиску и замене вы сможете сделать то же самое, но куда быстрее и эффективнее. Единственный момент, который стоит учитывать, это то, что если вы допустите ошибку, то вы не сможете все вернуть назад. Как только текст будет заменен, он исчезнет навсегда. Поэтому внимательно набирайте текст, который вы ищете и которым будете заменять.

Приступаем к делу

Как мы уже упомянули выше, изменения вернуть назад будет невозможно, поэтому советуем вам сделать бэкап базы данных – это можно сделать при помощи плагина или phpMyAdmin — после чего можно приступать к поиску и замене.

Поиск и замена при помощи плагина

Если вы не дружите с кодом и не хотите писать SQL запрос, то есть более простой способ найти и заменить текст. Это плагин WordPress под названием Better Search Replace.

WordPress

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

Главное преимущество Better Search Replace — он корректно работает с сериализованными данными, которые часто хранятся в опциях и метаполях WordPress. Это особенно важно, если вы заменяете доменные имена или ссылки на HTTPS — простая текстовая замена может повредить сериализованные массивы, поэтому рекомендуется использовать именно плагин или WP-CLI (см. ниже).

Запуск SQL запроса поиска и замены в phpMyAdmin

Вы можете использовать phpMyAdmin, чтобы найти и заменить текст в базе данных WordPress. Сперва надо зайти в админку cPanel вашего хостинга. Пролистайте вниз до секции баз данных и щелкните по phpMyAdmin.

WordPress

На скриншоте выше отображена админка cPanel в Hostnet. Ваша админка может выглядеть иначе. Запустится phpMyAdmin, где вам надо будет щелкнуть по названию базы данных WordPress и потом щелкнуть по SQL.

WordPress

Вам надо будет ввести ваш SQL-запрос следующим образом:

update TABLE_NAME set FIELD_NAME =
replace(FIELD_NAME, 'Text to find', 'text to replace with');

Например, если вы хотели найти текст в постах WordPress, то вам надо написать запрос подобным образом:

update wp_posts set post_content =
replace(post_content, 'Text to find', 'text to replace with');

Нажмите на кнопку Go, чтобы продолжить. phpMyAdmin запустит SQL-запрос и в случае успеха покажет количество замененных строк. Можете теперь зайти на свой сайт, чтобы увидеть изменения.

*Обратите внимание: префикс таблиц может отличаться от стандартного wp_.

Альтернатива для продвинутых пользователей: WP-CLI

В настоящее время для больших сайтов и разработчиков одним из самых быстрых способов замены текста является WP-CLI — консольный инструмент управления WordPress. Он также поддерживает сериализованные данные и может работать со всеми таблицами сразу.

Пример команды:

wp search-replace 'http://oldsite.com' 'https://newsite.com' --all-tables

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


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


Как изменить расписание удаления спама в Akismet

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

Зачем менять расписание?

Akismet позволяет справляться со спамерскими комментариями, мониторя все комментарии, пингбэки и трекбэки. Спамерские комментарии оседают в вашей базе данных, что, в свою очередь раздуваем размер ее бэкапа. Их удаление позволяет уменьшить размер базы данных. Также если вы получаете тысячи комментариев, то их ручное удаление может повлиять на производительность сайта. С другой стороны, есть пользователи, которые хотят сохранить комментарии для последующего анализа.

Меняем расписание

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

WordPress

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

add_filter( 'akismet_delete_comment_interval', 'custom_spam_delete_interval' );

function custom_spam_delete_interval() {
	return 7;
}

Поменяйте цифру 7 на любое количество дней, в течение которых вам надо, чтобы хранились комментарии. Поменяв на 0, позволит Akismet удалить все комментарии при следующем расписании.

Если вы не хотите менять functions.php вручную, можно использовать плагин WPCode, который позволяет добавлять пользовательские фрагменты кода через интерфейс WordPress.

Проверка изменений

Вы можете увидеть изменения, зайдя на страницу Settings – Akismet. Прокрутите вниз и вы увидите примечание: Spam in the spam folder older than X days is deleted automatically, где X — это количество дней, которое вы указали.

WordPress

Заметьте также и то, что когда спамерские комментарии будут удалены, вы не сможете их восстановить.


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


Как создать свой Facebook Feed в WordPress

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

Когда и зачем стоит создавать свой Facebook Feed на сайте

Facebook — одна из крупнейших социальных платформ в мире. Если у вас есть страница или группа, вы можете использовать её для общения с аудиторией, публикации новостей и продвижения контента. Однако посты, которые вы выкладываете на Фейсбуке, не видны на вашем сайте. Добавив фид Facebook на сайт, вы:

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

Давайте же посмотрим как все это можно сделать.

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

Подключение фида

Для начала необходимо установить плагин, который будет выводить ленту. Перейдите в раздел Plugins → Add New и введите в поиске «Smash Balloon». Установите и активируйте плагин Smash Balloon Social Post Feed. После активации плагин предложит пройти мастер настройки (setup wizard), который помогает быстро подключить аккаунт и включить нужные функции.

На первом этапе необходимо подключить свой Facebook-аккаунт. Для этого нажмите Add New, затем Connect to Facebook, авторизуйтесь через свою учётную запись и предоставьте доступ к выбранной странице или группе. Доступ не даёт плагину права управлять вашими страницами — он нужен только для того, чтобы получить список страниц и загрузить их публичный контент через API. Если у вас уже есть готовый API Access Token, можно воспользоваться ссылкой Add Account Manually, чтобы добавить данные вручную.

WordPress

WordPress

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

  • Facebook User Feed — основная функция, которая позволяет создавать и отображать ленты с подключённых страниц и групп.
  • Downtime Prevention — защита от простоев: если по какой-то причине фид не может обновиться, на сайте всё равно будет отображаться сохранённая версия ленты.
  • Localization — выбор языка интерфейса встроенных элементов, которые предоставляет Facebook. По умолчанию стоит English (US).
  • Social Feed Collection — предложение установить плагины для Instagram, Twitter, YouTube и TikTok, чтобы добавить ленты с других платформ.
  • Customer Reviews Plugin — дополнительный модуль для отображения отзывов с Google или Yelp, который помогает повышать доверие посетителей.

WordPress

На финальном экране плагин показывает обзор подключённых аккаунтов и активированных функций.

WordPress

Если вы приобрели лицензию, здесь же можно вставить лицензионный ключ в поле Paste license key here и нажать Activate, чтобы разблокировать Pro-функции. При желании можно завершить настройку, не вводя ключ, выбрав Complete Setup Without Upgrading.

WordPress

Вставка фида на сайт

После завершения настройки фида через Setup Wizard вы попадаете в раздел All Feeds, где отображается список всех созданных лент. Здесь фид можно полностью настроить и подготовить к отображению на сайте.

Сначала нажмите Add New, чтобы создать фид, выберите его тип и подключите нужную страницу или группу.

WordPress

WordPress

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

WordPress

После завершения кастомизации используйте опцию Embed a Feed, чтобы добавить фид на страницу или в виджет. Для этого нажмите Embed в правом верхнем углу интерфейса.

WordPress

Плагин предоставляет шорткод, который можно вставить в любую страницу или запись WordPress.

WordPress

Альтернативно можно воспользоваться блоком Gutenberg, доступным в редакторе.

После публикации страницы последние посты с Facebook будут автоматически отображаться на сайте.

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

Заключение

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


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520