'integer', 'default' => 300, 'sanitize_callback' => 'absint', ]); register_setting('blyzer_settings', 'blyzer_draft_placeholder', [ 'type' => 'string', 'sanitize_callback' => 'wp_kses_post', ]); register_setting('blyzer_settings', 'blyzer_keep_data', [ 'type' => 'integer', 'default' => 0, 'sanitize_callback' => fn($v) => empty($v) ? 0 : 1, ]); register_setting('blyzer_settings', 'blyzer_theme', [ 'type' => 'string', 'default' => 'auto', 'sanitize_callback' => fn($v) => in_array($v, Shortcodes::THEMES, true) ? $v : 'auto', ]); register_setting('blyzer_settings', 'blyzer_branding', [ 'type' => 'integer', 'default' => 0, 'sanitize_callback' => fn($v) => empty($v) ? 0 : 1, ]); register_setting('blyzer_settings', 'blyzer_live', [ 'type' => 'integer', 'default' => 1, 'sanitize_callback' => fn($v) => empty($v) ? 0 : 1, ]); register_setting('blyzer_settings', 'blyzer_live_interval', [ 'type' => 'integer', 'default' => 60, 'sanitize_callback' => fn($v) => min(Api::LIVE_MAX, max(Api::LIVE_MIN, absint($v))), ]); register_setting('blyzer_settings_templates', 'blyzer_templates_global', [ 'type' => 'array', 'default' => [], 'sanitize_callback' => [self::class, 'sanitizeTemplates'], ]); } public static function sanitizeTemplates($value): array { $clean = []; if (!is_array($value)) return $clean; foreach (Plugin::TYPES as $type) { if (isset($value[$type])) $clean[$type] = wp_kses_post((string) $value[$type]); } return $clean; } public static function actionLinks(array $links): array { $url = admin_url('edit.php?post_type=blyzer_event&page=blyzer-settings'); array_unshift($links, '' . esc_html__('Settings', 'blyzer-events') . ''); return $links; } public static function render(): void { if (!current_user_can('manage_options')) return; $tab = sanitize_key((string) filter_input(INPUT_GET, 'tab')); if (!in_array($tab, ['general', 'templates'], true)) $tab = 'general'; $globals = get_option('blyzer_templates_global', []); if (!is_array($globals)) $globals = []; $base = admin_url('edit.php?post_type=blyzer_event&page=blyzer-settings'); ?>

$label): $fieldId = 'blyzer_templates_global_' . $type; ?>