如何将资源集限制在单一类型的页面上?

时间:2020-02-20 作者:notthehoff

事实证明,不同的浏览器使用srcset加载图像的方式略有不同,网络速度对我来说至关重要。

我不想全局限制srcset,但我想确保只有在帖子上没有超过某个宽度的srcset。

代码是否可以这样做?

1 个回复
SO网友:Antti Koskinen

下面是一个从srcset 属性。这适用于古腾堡的特色图片和添加到帖子内容的图片。(在二十个二十主题上测试)。

function filter_wp_calculate_image_srcset( $sources, $size_array, $image_src, $image_meta, $attachment_id ) {
    global $post;
    if ( $post && \'post\' === $post->post_type ) {
        $max_size = 600; // change as needed
        // var_dump($sources);
        foreach ($sources as $size => $image) {
            if ( $size > $max_size ) {
                unset($sources[$size]);
            }
        }
        // var_dump($sources);
    }
    return $sources;
}
add_filter( \'wp_calculate_image_srcset\', \'filter_wp_calculate_image_srcset\', 11, 5 );
筛选文档:https://developer.wordpress.org/reference/hooks/wp_calculate_image_srcset/

相关推荐

如何使用正则表达式从内容中获取不同的html标记?

我试图从一篇文章中获得不同的html标记,并将它们显示为嵌套的手风琴。我已经很有成就了。我唯一的问题是。当我试图显示span内的所有p标记内容时,它只显示每个嵌套菜单内容的第一段。<div> <h2 style=\"text-align: center\">History</h2> <?php $sampleH = \'<b class=\"1\">2020</b> <p class=\"1