validator = $validator; } /** * 検証して出力 * * @param array $schema * @param bool $validated すでに検証済みならtrue * @return void */ public function print( array $schema, $validated = false ) { if ( empty( $schema ) ) { return; } if ( ! $validated ) { $validation = $this->validator->validate( $schema ); if ( ! $validation['is_valid'] ) { return; } $schema = $validation['schema']; } $json = wp_json_encode( $schema, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES ); if ( false === $json ) { return; } printf( "\n%s\n\n", wp_kses( sprintf( '', $json ), array( 'script' => array( 'type' => true, 'class' => true, 'data-avc-ais-schema' => true, ), ) ) ); } }