Dr.Slon Toolkit – мой модульный плагин WordPress. Написал его с нуля (clean-room) под задачи, которые постоянно встречаются на клиентских сайтах: скрытый вход, контроль REST API, IndexNow, sitemap, управление автообновлениями, транслитерация, отключение комментариев и базовая очистка.
Это не набор костылей и не «ещё один всё-в-одном». Архитектура модульная: каждый модуль отвечает только за свою зону, включается и выключается независимо, регистрирует только свои хуки. На сервере клиента Composer не нужен.
Текущая версия: 0.12.0
Требования: WordPress 6.6+, PHP 8.1+
Лицензия: GPL-2.0-or-later
Репозиторий: github.com/A-Krivoshein/dr-slon-toolkit
6 сентября 2026 вышел релиз 0.12.0: капча Яндекса нормально садится на форму входа, старые кириллические постоянные ссылки можно перевести в латиницу вместе с 301. ZIP: dr-slon-toolkit-0.12.0.zip.
Зачем этот плагин
На большинстве сайтов приходится ставить 5-8 разных плагинов ради базовых вещей: спрятать wp-login.php, ограничить REST, отправить IndexNow, сделать нормальный sitemap, отключить комментарии, транслитерировать URL и файлы, приглушить автообновления.
Каждый такой плагин тянет свой интерфейс, свои опции, иногда конфликты и лишний код. Dr.Slon Toolkit закрывает эти задачи одним лёгким модульным решением: единая страница настроек, без удалённого JavaScript в админке.
Модули (что есть в 0.12.x)
1. Скрытый вход (Hide Login)
- Прямой доступ к
wp-login.phpотдаёт 404 (кроме сброса пароля и recovery). - Вход работает по своему slug, например
/my-login/. - При смене slug rewrite-правила обновляются автоматически.
- Аварийное отключение одной константой в
wp-config.php. - Работает и на сайтах без красивых постоянных ссылок (есть fallback).
define('KRV_DSTK_DISABLE_HIDE_LOGIN', true);
2. REST API Control
- Три режима: всем / только авторизованным / whitelist.
- Встроенный неизменяемый allowlist системных маршрутов WordPress (редактор, медиа и т.д.).
- Пользовательский whitelist маршрутов и namespace только расширяет список, не ломает базовый.
- Отдельная capability для обхода ограничений.
- Реализация через нативный
rest_pre_dispatch.
3. IndexNow
- Ручная и автоматическая отправка URL.
- Неблокирующая очередь через WP-Cron с повторами и защитой от гонок.
- Проверочный ключ отдаётся по адресу
/<key>.txtбез записи файла на диск. - Учитывает Search Engine Visibility, noindex и canonical от The SEO Framework: не отправляет то, что индексировать не нужно.
4. Sitemap
- Индекс
/sitemap.xmlи отдельные карты по типам записей и таксономиям. - Пагинация, кеширование, корректный
lastmod. - Исключает неопубликованные и защищённые паролем записи.
- TSF-safe режим: если The SEO Framework уже отдаёт свой sitemap, модуль Dr.Slon Toolkit автоматически отключается и показывает уведомление. Без дублей.
5. Update Controls
- Управление автообновлениями ядра: all / minor / off.
- Отдельные переключатели для плагинов, тем и переводов.
- Управление e-mail уведомлениями об обновлениях.
- Всё через нативные фильтры WordPress, без хаков ядра.
6. Транслитерация
- Русский профиль для URL записей, терминов и имён загружаемых файлов.
- Новые slug транслитерируются сразу. Уже опубликованные кириллические URL можно перевести кнопкой на странице настроек, со 301.
- Файлы в uploads плагин сам не переименовывает: только новые загрузки.
7. Отключение комментариев
- Глобально закрывает комментарии и пинги.
- Скрывает соответствующий UI в админке.
- Блокирует POST и REST-запросы к комментариям.
8. Очистка (Cleanup)
- Отключение emoji-скриптов.
- Удаление wp-embed.
- Отключение XML-RPC.
- Безопасное удаление лишних тегов из
<head>.
Архитектура
Плагин построен по принципу «один модуль – одна ответственность».
dr-slon-toolkit.php– точка входа, автозагрузка (vendor или встроенный PSR-4 loader).src/Core– Plugin, Settings, Activator, Deactivator, RewriteManager, ModuleInterface.src/Modules– все функциональные модули.src/Admin– нативная страница настроек через Settings API.src/Integrations– The SEO Framework и GitHub Release Updater.
Настройки хранятся в одной опции dstk_settings с вложенной структурой. Каждый модуль можно включать и выключать независимо.
Обновления
С версии 0.9.0 WordPress сам предлагает обновления из GitHub Releases. Берётся только готовый asset dr-slon-toolkit-x.y.z.zip. Перед установкой проверяются SHA-256, размер, версия и структура пакета. Source code с кнопки «Code → Download ZIP» не используется.
Переход с версий ≤ 0.8.2 на 0.9.0 нужно сделать один раз вручную. Дальше обновления идут из админки.
9. Yandex SmartCaptcha
- Виджет на форме входа, включая скрытый slug. В 0.12.0 вписан в стандартный wp-login (шире форма, свой CSS).
- Ключи из Yandex Cloud. На сервере проверяется
smart-token. - Сброс пароля и XML-RPC не закрываются. Если API Яндекса недоступен, fail-open.
10. Login Attempts
- После серии неверных паролей IP блокируется.
- В опциях хранится хеш адреса, не сырой IP.
- Кнопка сброса блокировок на странице настроек.
11. Redirect Manager
- Точные редиректы 301/302:
/staryj/ -> /novyj/. - Не перехватывает wp-admin, страницу входа и REST.
Установка
- Откройте страницу релизов.
- Скачайте файл
dr-slon-toolkit-0.12.0.zip(именно asset, не Source code). - В WordPress: Плагины → Добавить новый → Загрузить плагин.
- Активируйте и настройте в меню Dr.Slon Toolkit.
Composer на боевом сайте не требуется.
Совместимость
Плагин специально сделан совместимым с The SEO Framework. Модули Sitemap и IndexNow умеют уходить в safe-mode, чтобы не создавать дубли и не отправлять noindex-страницы.
Что в планах
- Экспорт/импорт профилей настроек
- Расширенные интеграционные тесты
Итог
Dr.Slon Toolkit – рабочий инструмент, который я ставлю на клиентские сайты. Без воды, без лишних зависимостей, с понятной модульной структурой и нормальными проверками безопасности.
Скачать актуальный релиз и посмотреть код – по ссылкам ниже.