В 2023–2024 годах в российское законодательство были внесены изменения, касающиеся обработки персональных данных и использования файлов cookies.
Теперь сайты, которые собирают и используют cookies (например, для аналитики, маркетинга или персонализации), обязаны уведомлять пользователей об этом и получать их согласие.
Это связано с:
Федеральным законом «О персональных данных» (№152-ФЗ),
обновлениями требований Роскомнадзора,
тенденцией гармонизации российского регулирования с европейской практикой (GDPR).
Поэтому даже если вы используете сайт только как визитку и не подключаете сторонние сервисы, лучше добавить плашку согласия — это снижает риски и показывает прозрачность перед пользователями.
В конструкторе Craftum откройте страницу, где хотите разместить уведомление.
Вставьте HTML-блок.
Вставьте в него код плашки cookies (см. ниже).
Ниже приведён готовый пример. В код добавлены комментарии, чтобы вам и коллегам было проще адаптировать дизайн и тексты под ваш сайт.
<style>
/* === Стили плашки cookies === */
#cookie-consent {
position: fixed; /* фиксируем плашку поверх сайта */
left: 16px;
right: 16px;
bottom: 16px;
background: #111; /* фон (можно изменить под бренд) */
color: #fff;
padding: 12px;
border-radius: 10px;
display: flex;
gap: 10px;
align-items: center;
justify-content: space-between;
z-index: 9999; /* всегда поверх */
}
#cookie-consent p {
margin: 0;
font-size: 14px;
color: #ddd;
}
/* === Ссылка на политику === */
#cookie-consent a {
color: #84cc16; /* салатовый цвет */
text-decoration: underline;
transition: color 0.2s ease;
}
#cookie-consent a:hover {
color: #a3e635; /* ярче при наведении */
}
/* === Кнопки === */
.cc-btn {
border: 0;
padding: 8px 12px;
border-radius: 8px;
cursor: pointer;
font-weight: 600;
transition: background 0.25s ease, color 0.25s ease;
}
.cc-accept {
background: #84cc16; /* салатовый фон */
color: #000; /* чёрный текст */
}
.cc-accept:hover {
background: #65a30d; /* темнее при наведении */
color: #000;
}
.cc-decline {
background: transparent;
color: #ddd;
border: 1px solid rgba(255, 255, 255, .15);
}
.cc-decline:hover {
background: rgba(255, 255, 255, .1);
color: #fff;
}
.hidden {
display: none !important;
}
@media(max-width:520px) {
#cookie-consent {
flex-direction: column;
align-items: stretch;
}
}
</style>
<!-- === HTML плашки === -->
<div id="cookie-consent" role="dialog" aria-live="polite" data-shown="true">
<p>
Мы используем cookies для улучшения работы сайта.
Оставаясь на нашем сайте, Вы соглашаетесь с
<!-- замените ссылку ниже на свою страницу политики -->
<a href="/privacy-policy" target="_blank" rel="noopener">Политикой конфиденциальности</a>.
</p>
<div>
<!-- здесь можно поменять текст кнопок -->
<button type="button" class="cc-btn cc-decline" id="cc-decline">Отклонить</button>
<button type="button" class="cc-btn cc-accept" id="cc-accept">Принять</button>
</div>
</div>
<script>
(function(){
const NAME = 'site_cookies_v1'; // имя cookie, где хранится выбор пользователя
const el = document.getElementById('cookie-consent');
const acceptBtn = document.getElementById('cc-accept');
const declineBtn = document.getElementById('cc-decline');
if (!el || !acceptBtn || !declineBtn) {
console.error('Cookie banner: отсутствуют элементы в DOM');
return;
}
// === Установка cookie ===
function setCookie(name, val, days = 365) {
const d = new Date();
d.setTime(d.getTime() + days*24*60*60*1000);
document.cookie = name + "=" + encodeURIComponent(val) + ";path=/;expires=" + d.toUTCString() + ";SameSite=Lax";
}
// === Чтение cookie ===
function getCookie(name) {
return document.cookie.split('; ').reduce((res, part) => {
const [k, v] = part.split('=');
return k === name ? decodeURIComponent(v || '') : res;
}, null);
}
// Если выбор уже сделан — скрываем плашку
if (getCookie(NAME)) {
el.classList.add('hidden');
}
// Сохраняем выбор и скрываем баннер
function hideAndSave(val) {
try {
setCookie(NAME, val);
} catch (e) {
console.warn('Не удалось сохранить cookie:', e);
}
el.classList.add('hidden');
el.setAttribute('aria-hidden', 'true');
console.log('cookie choice:', val);
}
// Обработка кнопки "Принять"
acceptBtn.addEventListener('click', function(e){
e.preventDefault();
hideAndSave('accepted');
// Здесь можно запускать аналитику (например, Яндекс.Метрика или GA)
});
// Обработка кнопки "Отклонить"
declineBtn.addEventListener('click', function(e){
e.preventDefault();
hideAndSave('declined');
});
// Предотвращаем возможные конфликты с формами
[acceptBtn, declineBtn].forEach(btn => btn.addEventListener('click', ev => ev.stopPropagation()));
// Escape также закрывает плашку
document.addEventListener('keydown', e => {
if (e.key === 'Escape') el.classList.add('hidden');
});
})();
</script>
Дизайн (цвета, размеры, шрифты) — в <style>
.
Текст уведомления — в блоке <p>
.
Ссылку на политику — в теге <a href="...">
.
Текст кнопок — внутри <button>
.
Действия при согласии — в обработчике "Принять"
(например, запуск аналитики).
Таким образом вы добавите на свой сайт, сделанный на конструкторе Craftum плашку cookies. И ваш сайт будет соответствовать требованиям законодательства РФ и поможет снизить вероятность претензий со стороны регуляторов.
Мой Craftum тут.
Заходите в мой тг канал Дизайн дилетант, пишу о своих коммерческих проектах.