/
home
/
faureele
/
annequin
/
wp-content
/
plugins
/
google-analytics-dashboard-for-wp
/
includes
/
cache
/
Upload File
HOME
<?php /** * Cache Cron Handler * * Ensures the cache cleanup cron job is scheduled for both new installs * and existing users updating the plugin. This file is loaded on every * request to ensure the cron is always scheduled when it should be. * * @since 9.11.0 * @package ExactMetrics */ // Exit if accessed directly if ( ! defined( 'ABSPATH' ) ) { exit; } /** * Ensure cache cleanup cron is scheduled. * * This function runs on plugins_loaded to check if the cache cleanup * cron job is scheduled. If not, it schedules it. This ensures that: * 1. Fresh installs get the cron scheduled * 2. Existing users updating to this version get the cron scheduled * 3. If the cron somehow gets unscheduled, it will be re-scheduled * * This approach is used by major plugins like WooCommerce and Yoast SEO. * * @since 9.11.0 * @return void */ function exactmetrics_ensure_cache_cleanup_scheduled() { // Only run in admin or cron context to avoid unnecessary checks on frontend if ( ! is_admin() && ( ! defined( 'DOING_CRON' ) || ! DOING_CRON ) ) { return; } // Check if cleanup is already scheduled if ( ! wp_next_scheduled( 'exactmetrics_cache_daily_cleanup' ) ) { exactmetrics_schedule_cache_cleanup(); } } // Hook into plugins_loaded with priority 20 to ensure cache functions are loaded first add_action( 'plugins_loaded', 'exactmetrics_ensure_cache_cleanup_scheduled', 20 );