generate_cache_file() || !(@include_once ADVSET_CACHE_FILE)) { // Fallback: Execute features directly advset_cache_manager()->execute_active_features_fallback(); } }); /** * Helper functions */ // Check if we are in the admin area or on the login page function advset_is_admin_area() { return is_admin() || ( $GLOBALS['pagenow'] ?? '' ) === 'wp-login.php'; } // Get settings function advset_settings($id = null, $default = null) { $settings = get_option('advanced_settings_settings', []); return $id ? (isset($settings[$id]) ? $settings[$id] : $default) : $settings; } // Check if deprecated features are enabled function advset_show_deprecated_features() { $show_deprecated = advset_settings('advset.features.show_deprecated', false); return $show_deprecated && !empty($show_deprecated['enable']); } function advset_cache_manager() { require_once ADVSET_DIR . '/includes/class.cache-manager.php'; return AdvSet_CacheManager::getInstance(); } function advset_cleanup_cache() { return advset_cache_manager()->cleanup_cache(); } function advset_settings_manager() { require_once ADVSET_DIR . '/includes/class.settings-manager.php'; return AdvSet_SettingsManager::getInstance(); } function advset_save_settings($settings, $return_change_status = false) { return advset_settings_manager()->save_settings($settings, $return_change_status); } function advset_feature_manager() { require_once ADVSET_DIR . '/includes/class.feature-manager.php'; return AdvSet_FeatureManager::getInstance(); } function advset_register_category($category) { return advset_feature_manager()->register_category($category); } function advset_register_feature($feature) { return advset_feature_manager()->register_feature($feature); } function advset_get_categories() { return advset_feature_manager()->get_categories(); } function advset_get_features() { return advset_feature_manager()->get_features(); } function advset_get_category($id) { return advset_feature_manager()->get_category($id); } function advset_get_feature($id) { return advset_feature_manager()->get_feature($id); } function advset_get_features_by_category($category_id) { return advset_feature_manager()->get_features_by_category($category_id); }