jreviews:cookie_consent
Filters whether cookie-dependent features can load for the current visitor after jr_cookie_consent() resolves the legacy Hook::filter('cookie_consent') baseline for V5 compatibility; that legacy bridge is slated for removal in V7.
You need to have a working knowledge of Hooks before you get started.
Fires when resolving cookie consent through jr_cookie_consent().
Parameters
| Name | Type | Description |
|---|---|---|
$consented |
bool |
Whether the visitor has consented to cookies. |
Boilerplate Code
Use the boilerplate code to start using the filter, and add your own logic to modify the first argument and return it.
fwd_add_filter('jreviews:cookie_consent', function($consented)
{
// Your code here
return $consented;
});
The , 20, N after your callback are the hook priority and the number of arguments your callback accepts. By default, a hook passes your callback only its first argument; for a filter, that is the value being filtered, so a simple function($value) { ... } needs nothing extra. If your callback declares more parameters, such as function($value, $listing) { ... }, you must add N (the parameter count, 2 here). Because N is the fourth argument to fwd_add_filter() or fwd_add_action(), you must also pass the priority (20 is the default). Leaving these off when your callback expects extra parameters causes a Too few arguments to function ... fatal error.
Examples
Disable Features When Consent Not Granted
Check for the presence of a cookie named 'consent_cookie' and disable features if it doesn't exist.
Eventy::addFilter('jreviews:cookie_consent', function($consented)
{
$cookieName = 'consent_cookie';
if (!isset($_COOKIE[$cookieName])) {
return false;
}
return $consented;
}, 10);
Disable Features Using iReview Template Cookie
When using the iReview Joomla template or WordPress theme, check the 'cookieconsent_status' cookie.
Eventy::addFilter('jreviews:cookie_consent', function($consented)
{
$cookieName = 'cookieconsent_status';
if (!isset($_COOKIE[$cookieName]) || (isset($_COOKIE[$cookieName]) && $_COOKIE[$cookieName] !== 'dismiss')) {
return false;
}
return $consented;
}, 10);
Source Files
app/functions.php