>> Provider → query‑args map. */ function query_args(): array { return [ 'youtube' => youtube_query_args(), 'dailymotion' => dailymotion_query_args(), 'vimeo' => vimeo_query_args(), ]; } /** * @return array> * * Each element contains: * - `attr` : the query‑argument name used by DailyMotion. * - `type` : the accepted value type (bool, int, string, or an enum list). * - `name` : a human‑readable label (translated). * - `description` : a short description of what the argument does * (taken from the DailyMotion API docs where available). */ function dailymotion_query_args(): array { return [ [ 'attr' => 'api', 'type' => 'bool', 'name' => __( 'API', 'advanced-responsive-video-embedder' ), 'description' => __( 'Enable the JavaScript API for the player.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'autoplay', 'type' => 'bool', 'name' => __( 'Autoplay', 'advanced-responsive-video-embedder' ), 'description' => __( 'Start playback automatically when the player loads.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'chromeless', 'type' => 'bool', 'name' => __( 'Chromeless', 'advanced-responsive-video-embedder' ), 'description' => __( 'Hide all player controls and UI elements.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'highlight', 'type' => 'bool', 'name' => __( 'Highlight', 'advanced-responsive-video-embedder' ), 'description' => __( 'Show a highlighted thumbnail before playback starts.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'html', 'type' => 'bool', 'name' => __( 'HTML5', 'advanced-responsive-video-embedder' ), 'description' => __( 'Force the HTML5 player (instead of Flash).', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'id', 'type' => 'int', 'name' => __( 'Video ID', 'advanced-responsive-video-embedder' ), 'description' => __( 'The numeric identifier of the DailyMotion video.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'info', 'type' => 'bool', 'name' => __( 'Info', 'advanced-responsive-video-embedder' ), 'description' => __( 'Show the video information bar (title, author, etc.).', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'logo', 'type' => 'bool', 'name' => __( 'Logo', 'advanced-responsive-video-embedder' ), 'description' => __( 'Display the DailyMotion logo in the player.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'network', 'type' => [ 'dsl', 'cellular' ], 'name' => __( 'Network', 'advanced-responsive-video-embedder' ), 'description' => __( 'Specify the network type for adaptive bitrate selection.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'origin', 'type' => 'bool', 'name' => __( 'Origin', 'advanced-responsive-video-embedder' ), 'description' => __( 'Send the origin header for security (required for some browsers).', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'quality', 'type' => [ 240, 380, 480, 720, 1080, 1440, 2160 ], 'name' => __( 'Quality', 'advanced-responsive-video-embedder' ), 'description' => __( 'Force a specific video resolution.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'related', 'type' => 'bool', 'name' => __( 'Related', 'advanced-responsive-video-embedder' ), 'description' => __( 'Show related videos after playback ends.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'start', 'type' => 'int', 'name' => __( 'Start time', 'advanced-responsive-video-embedder' ), 'description' => __( 'Start playback at the given number of seconds.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'startscreen', 'type' => 'bool', 'name' => __( 'Start screen', 'advanced-responsive-video-embedder' ), 'description' => __( 'Show the start screen (thumbnail with play button) before playback.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'syndication', 'type' => 'int', 'name' => __( 'Syndication', 'advanced-responsive-video-embedder' ), 'description' => __( 'Enable or disable video syndication (embedding on other sites).', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'webkit-playsinline', 'type' => 'bool', 'name' => __( 'Playsinline (iOS)', 'advanced-responsive-video-embedder' ), 'description' => __( 'Allow the video to play inline on iOS devices instead of fullscreen.', 'advanced-responsive-video-embedder' ), ], [ 'attr' => 'wmode', 'type' => [ 'direct', 'opaque' ], 'name' => __( 'Window mode', 'advanced-responsive-video-embedder' ), 'description' => __( 'Set the Flash window mode; “direct” for transparent background, “opaque” for solid.', 'advanced-responsive-video-embedder' ), ], ]; } /** * @return array> * * Each element mirrors the YouTube descriptor format: * [ * 'attr' => '', // optional – kept for consistency * 'type' => , // bool, string, int, etc. * 'name' => __( '