如果要在所有现有帖子上显示它,可以使用regex。WordPress添加wp-image-ATTACHMENT_ID
在图像上分类。我们可以用它来找到attachment_id
然后获取新的url。例如,此处为中等大小。
wp_get_attachment_image_src
: https://developer.wordpress.org/reference/functions/wp_get_attachment_image_src/
我们将此筛选器应用于内容以更新您的帖子显示。我们使用regex查找attachment_id
和图像src
属性
function wpse_289055_new_image_size($content) {
preg_match(\'/wp-image-[0-9]*/\', $content, $matches);
if($matches !== NULL)
{
$thumb = wp_get_attachment_image_src(intval(str_replace(\'wp-image-\', \'\', $matches[0])), \'medium\');
if($thumb)
{
preg_match(\'/ src="([^"]*)"/\', $content, $matches);
if(isset($matches[1]))
{
$content = str_replace($matches[1], $thumb[0], $content);
}
}
}
return $content;
}
add_filter(\'the_content\', \'wpse_289055_new_image_size\');
在我看来,如果不使用缓存系统,那么这段代码将使用一些资源。修改这篇文章,直接更新你现有的所有帖子。