每个视频可以有不同的aspet比率,这是完全正常的。通常,主题设置为global $contnt_width
设置嵌入内容的最大宽度,高度为自动。例如:
if ( ! isset( $content_width ) ) {
$content_width = 700;
}
如果需要为嵌入内容设置特定的宽度和高度,可以尝试
oembed_defaults
filter:
add_filter(\'embed_defaults\',\'cyb_embed_defaults\');
function cyb_embed_defaults($defaults) {
$defaults[\'width\']=700;
$defaults[\'height\']=500;
return $defaults;
}
或者使用一些CSS技术。对于exmaple,将youtube嵌入iframe包装在自定义div中:
add_filter(\'embed_oembed_html\', \'cyb_oembed_html\' );
function cyb_oembed_html( $output ) {
//check that the embed content is from youtube
if( strpos( $output, \'youtube\' ) ) {
return \'<div class="video-container">\' . $output . \'</div>\';
}
return $output;
}
然后将CSS应用于
video-container
div.例如,这一款使youtube iframe响应迅速,纵横比为16:9:
.video-container {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.video-container iframe {
position: absolute;
top: 0; left: 0;
width: 100%;
height: 100%;
}
在中查找更多CSS技术和jQuery示例
this demo from CSS-Tricks.
旁白:正如我在其他问题中向您建议的那样,您应该考虑使用内置模板文件进行自定义帖子类型归档,而不是使用页面模板进行此类归档。您将保存一些额外的查询和额外的工作。