WordPress плагин для валидации e‑mail и синхронизации Mailgun suppressions. Без утечек секретов. Минимальная зависимость от WP.
- Version: 0.4.0
- Requires at least: WP 5.6
- Tested up to: WP 6.6
- PHP: 7.4+
- License: GPL-2.0-or-later
- Text Domain:
evwc-basic - Domain Path:
/languages
- Проверка e‑mail через Mailgun API.
- Безопасный REST вебхук: подпись + жёсткий отказ при отсутствии ключа.
- Суточный cron‑синк списков подавления (bounces/complaints/unsubscribes).
- Примитивная админ‑страница для ключей/доменов (можно задавать через константы).
- Скопируй
evwc-config.example.php→evwc-config.phpи заполни значения или задай константы вwp-config.php(предпочтительно на проде). - Активируй плагин.
- В админке открой страницу настроек и проверь URL вебхука.
// wp-config.php (рекомендуется)
define('EVWC_MG_KEY', 'key-REPLACE_ME');
define('EVWC_MG_DOMAIN', 'mg.example.com');
define('EVWC_MG_REGION', 'US'); // или 'EU'Локальный файл (для dev)
// evwc-config.php (локально)
if (!defined('EVWC_MG_KEY')) define('EVWC_MG_KEY', 'key-REPLACE_ME');
if (!defined('EVWC_MG_DOMAIN')) define('EVWC_MG_DOMAIN', 'mg.example.com');
if (!defined('EVWC_MG_REGION')) define('EVWC_MG_REGION', 'US');- Вебхук:
POST /wp-json/evwc/v1/mg-webhook
Требует валидной подписи Mailgun и наличияEVWC_MG_KEY. При отсутствии ключа — 403. При некорректной подписи — 403.
- Хук:
evwc_sync_suppressions_event(ежедневно). - Деактивация плагина снимает хук корректно.
Text Domain: evwc-basic,Domain Path: /languages.- Загружчик
load_plugin_textdomain()подключён. - Заготовка:
languages/evwc-basic.pot.
- Секреты только через константы/локальный файл из
.gitignore. - Вебхук отклоняет всё без ключа и без валидной подписи.
- Выводы в админке экранировать
esc_html/esc_attrпо мере локализации строк.
evwc-basic/
evwc-basic.php
evwc-config.example.php
languages/evwc-basic.pot
assets/screenshot-1.png
.gitignore
README.md
LICENSE
.gitignore уже содержит: evwc-config.php, /vendor/, /node_modules/, IDE/OS‑мусор.