code16/cookie-consent-js
Cookie consent
Setup
composer require code16/cookie-consent-js
Required: publish assets (add this in composer.json post-autoload-dump scripts)
php artisan vendor:publish --provider='Code16\CookieConsent\CookieConsentServiceProvider' --tag=assets --force
You may publish the config file:
php artisan vendor:publish --provider="Code16\CookieConsent\CookieConsentServiceProvider" --tag=config
And the lang file:
php artisan vendor:publish --provider="Code16\CookieConsent\CookieConsentServiceProvider" --tag=lang
Usage
In your blade layout
<head>
{{-- ... --}}
<x-cookie-consent::scripts />
<x-cookies-allowed category="analytics">
<script>
{{-- some injected cookies --}}
</script>
</x-cookies-allowed>
</head>
Also you must declare the cookie category in config/cookie-consent.php as follow
[
'categories' => [
'system' => [
'required' => true,
'services' => [
[
'cookies' => []
]
]
],
'analytics' => [
'services' => [
'google-analytics' => [
'cookies' => [
['name' => '_ga', 'lifetime' => '2 years']
]
]
]
],
]
];
Categories marked as required are cannot be opt-out by the user.
To provide explanation texts in the manage dialog, add content to the lang file:
[
'manage_modal' => [
'title' => 'Manage cookies',
'description' => 'About cookies...',
'categories' => [
'system' => [
'title' => 'System cookies',
'description' => "Description text about system cookies",
],
'analytics' => [
'title' => 'Analytics cookies',
'description' => "Description text about analytics cookies",
],
],
]
];
Show the manage modal from a link (e.g. cookies page)
In the page:
<a href="#manage-cookies">Open manage cookies modal</a>
Related Packages
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| v1.1.1 | >=8.0 | ^11.0| | ||
| v1.1.0 | >=8.0 | ^11.0| | ||
| v1.0.5 | >=8.0 | ^11.0| | ||
| v1.0.4 | >=8.0 | ^11.0| | ||
| v1.0.3 | >=8.0 | ^11.0 | ||
| v1.0.2 | >=8.0 | ^11.0 | ||
| v1.0.1 | >=8.0 | ^11.0 | ||
| v1.0.0 | >=8.0 | ^11.21 | ||
| v0.1.1 | >=8.0 | ^8.0 | ||
| v0.1.0 | >=8.0 | ^8.0 |