如何编码“?”图片 URL

How to encode “?” in image URL

我已经检查过了,并在这里找到了一个解决方案 (Q 34160546),遗憾的是它对我不起作用,也许其他人有想法?

我在 pingdom 上检查了我的网站,想摆脱他们提出的这个问题:

带有“?”的资源在 URL 中未被某些代理缓存服务器缓存。删除查询字符串并将参数编码为以下资源的 URL:

列出了一堆 jpg,但为了简单起见,我们只看一下主页(右侧小部件)上的我的个人资料图片:

https://example.com/profile.jpg?w=192

这个?应该用 %3F 编码,我的问题是如何以最好的方式做到这一点?在生成上述代码的小部件代码中,我只包含了这个:

<img src="https://example.com/profile.jpg" class="aligncenter" width="192">

现在不能直接写这个,会导致图片显示不出来:

<img src="https://example.com/profile.jpg%3Fw=192">

谁能告诉我如何快速修复我的 ~25 张图片?也许它会提高网站速度..

在 WordPress 中,这可以删除“?”从脚本和样式。但是从图像来看,你需要一些定制。

你可以使用preg_replace,我为你做了这个小例子。

<?php
$url = "http://www.test/img/FMR.jpg?Qq_0y12h";

echo "url = $url\n\n";

$urlFormatted = preg_replace("/\?.*$/", "", $url);
echo "urlFormatted = $urlFormatted\n";

?>

欲了解更多信息,

或者您也可以试试这段代码,虽然没有经过测试,但这会对您有所帮助。请visit

function remove_query_string($url) {
 return remove_query_arg('w', $url);
}
add_filter('the_permalink', 'remove_query_string');

希望对您有所帮助。