/10

✓' : '✗', [ 'span' => [ 'style' => [] ] ] ); ?>

$c['pass'] ) ); return (int) round( ( $passed / count( $checks ) ) * 10 ); } /** * Get all readiness checks. * * @return array */ public static function get_checks( array $settings ): array { global $wp_filesystem; if ( empty( $wp_filesystem ) ) { require_once ABSPATH . 'wp-admin/includes/file.php'; WP_Filesystem(); } return [ [ 'label' => __( 'agents.json exists', 'ai-ready-wp' ), 'pass' => $settings['enable_agents_json'] && $wp_filesystem->exists( AIREWP_ROOT_PATH . '.well-known/agents.json' ), ], [ 'label' => __( 'agent-card.json exists', 'ai-ready-wp' ), 'pass' => $settings['enable_agent_card'] && $wp_filesystem->exists( AIREWP_ROOT_PATH . '.well-known/agent-card.json' ), ], [ 'label' => __( 'llms.txt exists', 'ai-ready-wp' ), 'pass' => $settings['enable_llms_txt'] && $wp_filesystem->exists( AIREWP_ROOT_PATH . 'llms.txt' ), ], [ 'label' => __( 'JSON-LD schemas enabled', 'ai-ready-wp' ), 'pass' => (bool) $settings['enable_json_ld'], ], [ 'label' => __( 'AI bot policy set', 'ai-ready-wp' ), 'pass' => ! empty( $settings['enable_robots_ai'] ), ], [ 'label' => __( 'Company name set', 'ai-ready-wp' ), 'pass' => ! empty( $settings['company_name'] ), ], [ 'label' => __( 'Description set', 'ai-ready-wp' ), 'pass' => ! empty( $settings['company_desc'] ), ], [ 'label' => __( 'Contact email set', 'ai-ready-wp' ), 'pass' => ! empty( $settings['company_email'] ), ], [ 'label' => __( 'Services defined', 'ai-ready-wp' ), 'pass' => ! empty( $settings['services'] ), ], [ 'label' => __( 'Logo URL set', 'ai-ready-wp' ), 'pass' => ! empty( $settings['company_logo'] ), ], [ 'label' => __( 'IndexNow enabled', 'ai-ready-wp' ), 'pass' => $settings['enable_indexnow'] && ! empty( $settings['indexnow_key'] ), ], ]; } public static function get_score_message( int $score ): string { if ( $score >= 9 ) { return __( 'Excellent! Your site is fully AI-ready.', 'ai-ready-wp' ); } if ( $score >= 7 ) { return __( 'Good — a few items left to complete.', 'ai-ready-wp' ); } if ( $score >= 4 ) { return __( 'Getting there — fill in the missing settings.', 'ai-ready-wp' ); } return __( 'Just getting started — configure your settings to improve.', 'ai-ready-wp' ); } public static function get_score_color( int $score ): string { if ( $score >= 8 ) { return '#46b450'; } if ( $score >= 5 ) { return '#f0b849'; } return '#dc3232'; } }