Пакет 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 на фронтенді.
Дізнайтеся більше про цей пакет, повні інструкції з установки та перегляньте вихідний код на 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"