get_header_video_settings()
云策文档标注
概述
get_header_video_settings() 函数用于检索自定义头部视频的设置,返回一个包含视频URL、类型、尺寸等信息的数组。该函数通过获取头部数据、视频URL和文件类型来构建设置数组,并支持通过过滤器进行自定义。
关键要点
- 函数返回一个数组,包含 mimeType、posterUrl、videoUrl、width、height、minWidth、minHeight 和 l10n 等键值。
- 自动检测视频类型:如果是 YouTube 链接,设置 mimeType 为 'video/x-youtube';否则使用 wp_check_filetype() 检测。
- 提供了 apply_filters('header_video_settings', $settings) 钩子,允许开发者过滤设置数组。
- 依赖于 get_custom_header()、get_header_video_url()、get_header_image() 等辅助函数来获取相关数据。
代码示例
$settings = get_header_video_settings();
// 示例输出数组结构
print_r($settings);注意事项
- 函数自 WordPress 4.7.0 版本引入,使用时需确保版本兼容性。
- 视频尺寸基于自定义头部设置,minWidth 和 minHeight 有默认值(900 和 500),可通过过滤器调整。
- l10n 数组包含本地化的播放控制文本,支持多语言翻译。
原文内容
Retrieves header video settings.
Source
function get_header_video_settings() {
$header = get_custom_header();
$video_url = get_header_video_url();
$video_type = wp_check_filetype( $video_url, wp_get_mime_types() );
$settings = array(
'mimeType' => '',
'posterUrl' => get_header_image(),
'videoUrl' => $video_url,
'width' => absint( $header->width ),
'height' => absint( $header->height ),
'minWidth' => 900,
'minHeight' => 500,
'l10n' => array(
'pause' => __( 'Pause' ),
'play' => __( 'Play' ),
'pauseSpeak' => __( 'Video is paused.' ),
'playSpeak' => __( 'Video is playing.' ),
),
);
if ( preg_match( '#^https?://(?:www.)?(?:youtube.com/watch|youtu.be/)#', $video_url ) ) {
$settings['mimeType'] = 'video/x-youtube';
} elseif ( ! empty( $video_type['type'] ) ) {
$settings['mimeType'] = $video_type['type'];
}
/**
* Filters header video settings.
*
* @since 4.7.0
*
* @param array $settings An array of header video settings.
*/
return apply_filters( 'header_video_settings', $settings );
}
Hooks
- apply_filters( ‘header_video_settings’, array $settings )
-
Filters header video settings.
Changelog
| Version | Description |
|---|---|
| 4.7.0 | Introduced. |