Каждая форма на сайте, которая принимает имя, телефон или почту, собирает персональные данные. По закону о персональных данных на это нужно согласие человека, и в случае вопросов вы должны показать, что оно было. Галочка «согласен», которую проверяет только браузер, этого не доказывает.
Это 13-я часть цикла «WordPress на кэшируемом сайте». Юридическую сторону оставим юристам — здесь о том, как сделать это технически честно на кэшируемом сайте.
Отдельная галочка, а не мелкий текст
Фраза «нажимая кнопку, вы соглашаетесь…» под формой — не отдельное согласие. У нас в каждой форме, где есть данные человека, своя галочка со ссылкой на текст согласия:
- форма заявки — согласие на обработку контакта;
- комментарий — согласие и предупреждение, что имя будет опубликовано рядом с комментарием;
- подписка по почте — согласие на обработку адреса.
Проверка на сервере, а не только в браузере
Браузерная проверка — для удобства: подсветить галочку до отправки. Обойти её можно одним запросом без браузера. Поэтому сервер проверяет то же самое и без согласия заявку не принимает:
if (empty($_POST['consent'])) {
wp_send_json([
'ok' => false,
'fields' => ['consent'],
'message' => 'нужно согласие на обработку персональных данных',
]);
}
В заявке — когда и с каким текстом
Тексты согласия меняются. Чтобы через год можно было сказать, на что именно согласился человек, вместе с заявкой хранится время и редакция текста:
const CONTACT_FORM_CONSENT_VERSION = '2026-10-12'; // редакция текста /soglasie/
update_post_meta($leadId, 'lead_consent', [
'at' => current_time('mysql'),
'text' => home_url('/soglasie/'),
'version' => CONTACT_FORM_CONSENT_VERSION,
]);
Изменили текст согласия — поменяли константу. Старые заявки остаются со старой редакцией. У комментариев то же самое хранится в мете комментария, у подписчиков — в поле таблицы подписок.
Почему это не мешает кэшу
Галочка — часть пустой формы, одинаковой для всех. Отметка о согласии рождается только в момент отправки, в запросе мимо кэша. В кэшированной разметке нет ничего, что зависело бы от конкретного человека.
Плашка про cookie
Плашка «сайт использует cookie» — тот же случай, что любая разметка, зависящая от куки: в кэше она будет либо у всех, либо ни у кого. Поэтому плашка есть в HTML у всех, а показывать её или нет, решает скрипт по отметке в браузере посетителя. Подробно — в девятой части цикла про кэш страниц.
Куда уходят данные после формы — тоже часть согласия. Если заявки пересылаются в мессенджер, сервера которого за рубежом, это трансграничная передача, и у неё свои требования. Проверьте свои каналы доставки до того, как об этом спросят.
Нужно привести формы сайта в порядок по персональным данным?
Пришлите адрес — сделаю отдельные согласия с проверкой на сервере и хранением редакции текста.
// загружаю комментарии…