60 lines
1.7 KiB
PHP
60 lines
1.7 KiB
PHP
<?php
|
|
|
|
defined( 'ABSPATH' ) || exit;
|
|
|
|
/**
|
|
* Conflict with Age Verify: don't cache pages until the age-verified cookie is set
|
|
*
|
|
* @since 2.7
|
|
*/
|
|
if ( class_exists( 'Age_Verify' ) && defined( 'Age_Verify::SLUG' ) ) :
|
|
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 18 );
|
|
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_cache_mandatory_cookie_for_age_verify' );
|
|
endif;
|
|
|
|
/**
|
|
* Add age-verified to the list of mandatory cookies
|
|
*
|
|
* @since 2.7
|
|
*
|
|
* @param Array $cookies Array of mandatory cookies.
|
|
* @return Array Updated array of mandatory cookies
|
|
*/
|
|
function rocket_add_cache_mandatory_cookie_for_age_verify( $cookies ) {
|
|
$cookies[] = 'age-verified';
|
|
return $cookies;
|
|
}
|
|
|
|
/**
|
|
* Add age-verified cookie when we activate the plugin
|
|
*
|
|
* @since 2.7
|
|
*/
|
|
function rocket_activate_age_verify() {
|
|
add_filter( 'rocket_htaccess_mod_rewrite', '__return_false', 18 );
|
|
add_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_cache_mandatory_cookie_for_age_verify' );
|
|
|
|
// Update the WP Rocket rules on the .htaccess file.
|
|
flush_rocket_htaccess();
|
|
|
|
// Regenerate the config file.
|
|
rocket_generate_config_file();
|
|
}
|
|
add_action( 'activate_age-verify/age-verify.php', 'rocket_activate_age_verify', 11 );
|
|
|
|
/**
|
|
* Remove age-verified cookie when we deactivate the plugin
|
|
*
|
|
* @since 2.7
|
|
*/
|
|
function rocket_deactivate_age_verify() {
|
|
remove_filter( 'rocket_cache_mandatory_cookies', 'rocket_add_cache_mandatory_cookie_for_age_verify' );
|
|
|
|
// Update the WP Rocket rules on the .htaccess file.
|
|
flush_rocket_htaccess();
|
|
|
|
// Regenerate the config file.
|
|
rocket_generate_config_file();
|
|
}
|
|
add_action( 'deactivate_age-verify/age-verify.php', 'rocket_deactivate_age_verify', 11 );
|