Пакет Laravel Cookie Guard пропонує просте вікно згоди на використання cookie, де користувачі можуть визначити, які cookie вони хочуть дозволити. Після відправлення модального вікна ці cookie стають доступними для використання на фронтенді.

Після налаштування пакета та визначення cookie для вашого сайту ви можете перевірити, чи дозволено певну категорію cookie. У прикладі з readme використовується PHP-індикатор $_COOKIE, але ви також можете створити хелпер для спрощення перевірок згоди на cookie:
<!-- Перевірка cookie 'targeting': -->
@if(isset($_COOKIE[config('cookies_consent.cookie_prefix') . 'cookies_consent']))
@php
$cookiesConsent = json_decode($_COOKIE[config('cookies_consent.cookie_prefix') . 'cookies_consent'], true);
@endphp
@if(isset($cookiesConsent['targeting']) && $cookiesConsent['targeting'] && config('app.google_analytics_id'))
Примітка: приклад з readme базується на HTML, що генерується сервером, який не кешується.
На фронтенді ви можете використовувати window.localStorage для перевірки відповідних cookie, визначених у конфігураційному файлі. Це дозволить вам динамічно реалізувати логіку згоди на cookie на фронтенді.
# Основні можливості
- Налаштовувані категорії cookie.
- Три варіанти інтеграції: єдине діалогове вікно, внутрішня сторінка, окрема зовнішня сторінка.
- Чистий та інтуїтивно зрозумілий інтерфейс для модального вікна згоди на cookie.
- Липка кнопка з cookie та посилання внизу, які дозволяють користувачам у будь-який час змінити свої вподобання. Ця кнопка є необов'язковою, і її наявність можна налаштувати в конфігураційному файлі.
- Окрема сторінка для вподобань cookie, де користувачі можуть дізнатися більше про кожну категорію cookie та змінити свої налаштування.
- Підтримка кількох мов. Плагін включає 6 вбудованих мов: англійська, грецька, іспанська, німецька, італійська та шведська. Ви можете додати свою мову, опублікувавши переклади та редагуючи чи додаючи власні.
Дізнайтеся більше про цей пакет, повні інструкції з установки та перегляньте вихідний код на GitHub.
Також ви можете встановити та налаштувати цей пакет за допомогою Composer і Artisan:
composer require scify/laravel-cookie-guard
php artisan vendor:publish \
--provider="SciFY\LaravelCookiesConsent\LaravelCookiesConsentServiceProvider" \
--tag="cookies-consent-public" \
--tag="cookies-consent-config"