PHP - 从url中删除rss外部图像的大小

时间:2014-05-05 09:39:53

标签: php image url replace

我想在wordpress中删除从外部网站通过RSS抓取的图像网址中的图像大小。这些图像是基于rss随机生成的,因此必须自动替换或删除字符串。

网址如下所示:

可湿性粉剂内容/上传/ 2014/04 / 10154286_630741873674479_8554167680140056790_n-160x132.jpg 从_n-160x132.jpg必须删除-160x132以获得图像的完整大小。

我试过这个,但它不起作用:

<?php 
 function remove_url_size( $content ) { 
    $content =
        preg_replace('_n[^>]*.jpg', '_n.jpg', $content);
    return $content;
} 
add_filter( 'the_content', 'remove_url_size' ); 
?>

我再说一遍,它不会仅针对一张图像而是使用相同方法的未知随机图像。

2 个答案:

答案 0 :(得分:0)

试试这个:

$img_link = "wp-content/uploads/2014/04/10154286_630741873674479_8554167680140056790_n-160x132.jpg";
$new_img_link = preg_replace("/\_n[^\.]*\.jpg/", "_n.jpg", $img_link);

答案 1 :(得分:0)

你快到了。您的代码中唯一的问题是您没有传递有效的正则表达式模式,它应该被/ s

包围
<?php 
 function remove_url_size( $content ) { 
    $content =
        preg_replace('/_n[^>]*.jpg/', '_n.jpg', $content);
    return $content;
} 
add_filter( 'the_content', 'remove_url_size' ); 
?>