删除添加到Wordpress URL的查询字符串


Remove a query string added to Wordpress URLs

我必须使用一个不是我的Wordpress安装,我需要做一些事情来优化性能。

除此之外,我发现几乎每一个URL,特别是静态文件的URL,都会附加一个查询字符串,而且它总是一样的:

  • https://www.example.com/wp-content/uploads/2013/06/gfi-150x42.png?e1e0dc
  • https://www.example.com/wp-content/uploads/2013/06/healthline-150x42.png?e1e0dc

等等。

有人知道导致这种情况的插件吗?我安装了以下内容,但我找不到导致它的原因,或者如果是其他原因:

  • 高级自定义字段
  • Akismet
  • 分类文章小工具
  • 联系表格7
  • Envato WordPress工具包
  • 形式:第三方整合
  • 谷歌XML站点地图
  • LayerSlider WP
  • 准备好了!备份
  • 准备好了!Backup PRO
  • 重定向
  • 从静态资源中删除查询字符串
  • 特别最近的帖子免费版
  • Twoot工具包
  • W3总缓存
  • Wickett推特小工具
  • WordPress领导Salesforce CRM
  • WordPress HTTPS
  • WordPress SEO
  • WP页面导航

您可以在主题的functions.php文件中删除主题资源(css和javascript文件)中的查询字符串:

// Remove Query Strings from enqueue scripts
add_filter( 'style_loader_src', 'remove_query_string' );
add_filter( 'script_loader_src', 'remove_query_string' );
function remove_query_string( $url )
{
    return remove_query_arg( 'ver', $url );
}

至于来自插件的查询字符串,我认为在每个插件中都会有类似的修复。

将版本号附加为URL查询字符串是一种常见的缓存破坏解决方案。

看起来W3 Total Cache可能是罪魁祸首。他们的网站上说,其中一个功能是:

  • 使用缓存控制、未来过期标头和带有"缓存破坏"的实体标记(ETag)的浏览器缓存

根据插件的作者,你可以禁用这个功能:

取消选中浏览器缓存设置选项卡上的"更改设置后阻止缓存对象"选项。