Coma Web Development разрабатывает сайты на WordPress c 2010 года. В блоге мы делимся некоторыми наблюдениями из жизни, советами и рекомендациями для тех, кто решит сделать сайт на WordPress самостоятельно.

Что такое: Типы постов

Типы постов – термин, используемый для различных видов содержания текста на сайте WordPress. В 2003 WordPress был изначально запущен как платформа для блогов. Посты – это общая терминология блоггинга, которая закрепилась за системой WordPress, в то время как она развилась в систему управления контентом (CMS). Когда WordPress добавил разный тип контента, страницы, они назвали это другим видом постов, отсюда и пошло название «тип поста». В поздних версиях WordPress добавил разработчикам возможность зарегистрировать свои собственные виды постов. В целом, тип поста определяет структуру и поведение конкретного контента.

По умолчанию WordPress предлагает следующие типы:

  • Пост (post)
  • Страница (page)
  • Медиафайл (attachment)
  • Ревизия (revision)
  • Пункт навигационного меню (nav_menu_item)

Дизайнеры и разработчики тем могут добавить пользовательские виды постов при помощи функции register_post_type() или одного из множества плагинов.

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


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


Что такое: JavaScript

JavaScript — это язык программирования, встроенный в браузеры, который делает веб-страницы «живыми». Программы на этом языке называются скриптами. В браузере они подключаются к HTML и выполняются сразу после загрузки страницы. JS позволяет добавлять динамичные элементы на сайт: слайдеры, всплывающие окна, кнопки, интерактивные формы и другие элементы интерфейса.

JavaScript в WordPress

WordPress темы и плагины активно используют JavaScript для создания интерактивных и динамических элементов. Чаще всего используется комбинация:

  • Vanilla JS (чистый JavaScript без библиотек)
  • AJAX для динамических запросов без перезагрузки страницы
  • jQuery (для обратной совместимости и старых тем)
  • Современные фреймворки в продвинутых темах: React, Vue.js, Alpine.js

JavaScript может быть добавлен к теме или плагину через стандартные функции WordPress:

// Регистрация и подключение скрипта
wp_register_script( 'custom-js', get_template_directory_uri() . '/js/custom.js', array('jquery'), null, true );
wp_enqueue_script( 'custom-js' );

Совет: напрямую вставлять JS в файлы темы (например, header.php или footer.php), не рекомендуется. Лучше использовать wp_enqueue_script() и при необходимости wp_localize_script() для передачи данных из PHP в JS.

Организация скриптов в теме

Многие темы содержат отдельную папку /js, где хранятся все JavaScript-файлы. Скрипты вызываются только там, где они нужны. Это ускоряет загрузку страницы и предотвращает ненужную загрузку скриптов.

Пример структуры темы:

/wp-content/themes/my-theme/
├── js/
│   ├── main.js
│   ├── slider.js
│   └── popup.js
├── style.css
├── functions.php
└── index.php

Стандартные библиотеки WordPress

WordPress включает несколько библиотек, которые можно использовать в своих темах и плагинах:

  • jQuery — для обратной совместимости
  • Underscore.js — утилитарные функции
  • Backbone.js — для создания структурированных клиентских приложений
  • wp.i18n — для интернационализации
  • wp.apiFetch — для AJAX-запросов к REST API

Пример подключения встроенной библиотеки:

wp_enqueue_script( 'jquery' ); // Подключение jQuery

Вывод

JavaScript остаётся основным инструментом для создания интерактивных сайтов на WordPress. Современные темы используют сочетание ванильного JS, AJAX и фреймворков. Организованный и правильно подключённый JS делает сайт быстрее, удобнее и современнее.


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


Что такое: Дочерняя Тема

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

Чтобы создать дочернюю тему, необходимо создать отдельную папку внутри каталога тем. Главный файл, без которого она не будет распознана, — это style.css. В его заголовке указывается родительская тема через параметр Template, который должен точно соответствовать имени папки родительской темы. После включения дочерней темы её стили подключаются поверх стилей родительской, поэтому вы можете переопределять любые правила CSS. Родительская тема при этом продолжает работать полностью, предоставляя функциональность, которую вы не изменяли в дочерней теме.

Пример правильного файла style.css дочерней темы

/*
 Theme Name:   My Child Theme
 Theme URI:    https://example.com/
 Description:  Child theme for the Twenty Twenty-Five theme
 Author:       Your Name
 Author URI:   https://example.com/
 Template:     twentytwentyfive
 Version:      1.0.0
 Text Domain:  my-child-theme
*/

/* Ваши пользовательские стили */

Важно:
Template: должен быть строго названием папки родительской темы. Например, если тема находится в /wp-content/themes/twentytwentyfive, то Template: twentytwentyfive.

Пример functions.php для правильного подключения стилей

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

<?php
add_action( 'wp_enqueue_scripts', 'my_child_theme_styles' );
function my_child_theme_styles() {
    // Подключаем стиль родительской темы
    wp_enqueue_style(
        'parent-style',
        get_template_directory_uri() . '/style.css'
    );

    // Подключаем стиль дочерней темы
    wp_enqueue_style(
        'child-style',
        get_stylesheet_directory_uri() . '/style.css',
        array( 'parent-style' )
    );
}

Структура файлов дочерней темы

Минимальная структура выглядит так:

my-child-theme/
│
├── style.css ← обязательный файл
├── functions.php ← подключение стилей и пользовательский код
└── screenshot.png ← (необязательно) миниатюра темы в админке
Вы можете добавлять в дочернюю тему любые файлы с такой же структурой, что и у родительской. Если файл существует и в родительской, и в дочерней теме — используется файл дочерней.

Пример переопределения шаблона:

my-child-theme/
└── header.php ← заменит header.php родительской темы

Поддержка theme.json в дочерних темах

Если родительская тема является блочной темой (FSE), она использует файл theme.json. В дочерней теме можно создавать свой theme.json — он:

  • не заменяет, а дополняет и переопределяет настройки родительской темы
  • позволяет менять цвета, типографику, настройки блоков, шаблоны и многое другое

Пример минимального theme.json в дочерней теме:

{
  "version": 2,
  "settings": {
    "color": {
      "palette": [
        {
          "name": "Брендовый цвет",
          "slug": "brand",
          "color": "#0066ff"
        }
      ]
    }
  }
}


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


Что такое: Экран Администратора

Термин Экран Администратора используется для описания различных секций в WordPress, связанных с областью администраторской панели. Причина по которой используется термин «Экраны» а не «страницы», заключается в том, чтобы избежать путаницы между административными экранами и обычными страницами (как типом поста), которые могут быть созданы, отредактированы или удалены пользователем.

WordPress

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

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

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

Администраторы могут также изменять файлы темы или добавлять пользовательский код через экран «Редактор файлов» (Theme File Editor), однако в современных версиях WordPress его использование не рекомендуется, так как прямое редактирование файлов может привести к ошибкам и потере изменений. Для визуального изменения оформления в админ-панели доступен встроенный инструмент Additional CSS в настройщике (Customizer), если он включён темой; он позволяет безопасно добавить собственный CSS без изменения файлов темы.


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


Как убрать возможность восстановления и смены пароля из WordPress

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

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

Способ первый: убираем опцию восстановления пароля через плагин

Способ с плагином проще и удобнее. Он позволяет вам настроить отмену восстановления пароля для всех пользователей. Вам надо установить и активировать плагин Reset Password Removed.

Примечание: Reset Password Removed отключает восстановление пароля для всех пользователей, включая администраторов.

После активации плагин автоматически убирает ссылку «Забыли пароль?» и блокирует возможность восстановления пароля для всех пользователей.

Способ второй: вручную убираем функцию восстановления пароля в WordPress

Если вы предпочитаете не устанавливать дополнительные плагины, или хотите точечно отключать восстановление пароля для определённых пользователей, можно использовать кастомный код. Для этого откройте любой текстовый редактор и создайте файл, например disable-password-reset.php. Вставьте в него один из ниже приведённых вариантов кода.

Отключение для всех пользователей

Вариант 1: блокировка с перенаправлением и удалением ссылки «Забыли пароль?»

Следующий код полностью блокирует возможность восстановления пароля для всех пользователей, убирает ссылку «Забыли пароль?» на странице входа и перенаправляет всех, кто попытается открыть стандартную страницу сброса пароля, обратно на страницу входа:

<?php
add_filter( 'allow_password_reset', '__return_false' );
add_action( 'login_init', function() {
    if ( isset( $_GET['action'] ) && in_array( $_GET['action'], ['lostpassword', 'retrievepassword'] ) ) {
        wp_redirect( wp_login_url(), 301 ); // Перенаправляет всех на страницу входа
        exit;
    }
});
add_filter( 'gettext', function( $text ) {
    return ( $text === 'Lost your password?' ) ? '' : $text;
});
?>

Вариант 2: блокировка с сохранением возможности восстановления для администраторов

Другой код также полностью блокирует возможность восстановления пароля для всех пользователей и убирает ссылку «Забыли пароль?» на странице входа. Администраторы смогут восстанавливать пароли через админпанель, при этом для обычных пользователей восстановление полностью недоступно:

<?php
class Password_Reset_Removed {
    function __construct() {
        add_filter('show_password_fields', array($this, 'disable'));
        add_filter('allow_password_reset', array($this, 'disable'));
        add_filter('gettext', array($this, 'remove'));
    }

    function disable() {
        $userdata = wp_get_current_user();
        $user = new WP_User($userdata->ID);
        if ( ! empty( $user->roles ) && is_array( $user->roles ) && $user->roles[0] == 'administrator' ) {
            return true; // Администраторы сохраняют возможность восстановления через админпанель
        }
        return false; // Остальные пользователи не могут
    }

    function remove($text) {
        return str_replace(array('Lost your password?', 'Lost your password'), '', trim($text, '?'));
    }
}

$pass_reset_removed = new Password_Reset_Removed();
?>

Отключение для определённых ролей или пользователей

Если нужно блокировать восстановление пароля только для конкретных ролей или отдельных пользователей, используйте код с проверкой ролей или ID пользователей:

Блокировка для всех кроме администраторов:

<?php
add_filter('allow_password_reset', function($allow, $user_id) {
    $user = get_userdata($user_id);
    if (in_array('administrator', $user->roles)) return true; // Администраторы могут сбрасывать пароль
    return false; // Все остальные пользователи не могут
}, 10, 2);
?>

Блокировка для конкретных пользователей по ID:

<?php
add_filter('allow_password_reset', function($allow, $user_id) {
    $blocked_users = [3, 7, 15]; // ID пользователей, для которых восстановление заблокировано
    if (in_array($user_id, $blocked_users)) return false;
    return true; // Остальные пользователи могут сбрасывать пароль
}, 10, 2);
?>

Сохраните ваш файл. Затем соединитесь со своим сайтом по FTP и зайдите в папку wp-content/plugins.

WordPress

Загрузите созданный вами файл в эту папку. Теперь зайдите в админку на страницу Plugins, где вы увидите новый плагин Disable Password Reset в списке установленных. Активируйте его.

WordPress

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


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


Что такое: .htaccess

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

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

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

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

Стоит учитывать, что если Ваш сайт работает на Nginx, то .htaccess не используется — правила перенаправлений, перезаписи URL и кэширования задаются в конфигурации Nginx (например, через nginx.conf) или через панель управления хостинга. При этом современные панели управления (cPanel, Plesk, RunCloud и др.) часто предоставляют возможность автоматического редактирования .htaccess с резервным копированием, что снижает необходимость ручного вмешательства.

Такие плагины как W3 Total Cache, WP Rocket и другие современные решения для кэширования и оптимизации, изменяют Ваш .htaccess файл для настройки кэширования, сжатия и оптимизации ресурсов сайта.

Файл .htaccess обычно находится в корневых директориях Вашего WordPress сайта. Ваш FTP клиент может не показывать его, так как по умолчанию файлы и директории, начинающиеся с точки, считаются скрытыми. Чтобы увидеть их, включите отображение скрытых файлов в FTP-клиенте.

Если Вы используете CDN (Cloudflare, BunnyCDN и др.), часть перенаправлений и кэширования может управляться на уровне CDN, а не через .htaccess, что также стоит учитывать при настройке сайта.


Наша специальность — разработка и поддержка сайтов на 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