0

我的 Word-press 网站有问题,当我使用 GTmetrix 进行测试时,它说从一致的 URL 提供资源。它显示我使用了 2 个 css 文件,一个具有正常正确的扩展名 .css,另一个具有一些版本扩展名,最后一个是 .css?ver=4.9.8。正确的是第一个style.css。我不知道另一个是从哪里来的。据我所知,我没有使用过任何地方。我已尝试根据 Google 的建议从管理面板中停用一些插件,例如缓存。但它不起作用。https://gtmetrix.com/reports/pentaworkspace.com/z0ra5DhP

请有人帮我解决这个问题吗?

错误

4

1 回答 1

0

这个 CSS 文件肯定是按您的主题排队的。代码应该在周围function.php或相关文件中。尝试搜索wp_enqueue_script,并查找作为参数传递的有问题的脚本名称。

URL 中的 version 参数是为了能够清除浏览器缓存:如果您的文件已更新,但 URL 没有更改:浏览器将继续使用其缓存版本并且不会显示更新。更新此ver参数将强制浏览器再次下载和缓存文件。

您可以使用这样的代码段来删除这些参数(现在您知道它们为什么在这里,以及它会产生什么情况):

function remove_wp_assets_qvar( $src ) {
    $src = preg_replace_callback( '/ver=[^&]*/', __NAMESPACE__ . '\\removeVersionCallback', $src );
    if ( strpos( $src, 'ver=' ) ) {
        $src = remove_query_arg( 'ver', $src );
    }

    return $src;
}

add_filter( 'style_loader_src', __NAMESPACE__ . '\\remove_wp_assets_qvar', 9999 );
add_filter( 'script_loader_src', __NAMESPACE__ . '\\remove_wp_assets_qvar', 9999 );

信息:如今,许多资产管道(webpack、gulp ...)正在生成“版本化”构建文件,文件名中具有唯一的哈希值,以防止那些浏览器缓存“问题”。

于 2018-08-26T11:01:42.867 回答