在WordPress中更新CSS

kqhtkvqz  于 5个月前  发布在  WordPress
关注(0)|答案(1)|浏览(76)

我在Wordpress工作,我有自定义的CSS文件,这是我的主题的一部分。这些文件工作正常,但一周后,我回去编辑他们的CSS和更新不渲染到页面。
在我的检查器工具中,我注意到文件是books.css/ver=6.3.2,我觉得这就是我需要更新的。我尝试清除缓存,隐身等,但没有找到解决方案。在聊天GPTing之后,我在function.php文件中添加了一个随机版本计算器,所以现在调用看起来像这样:

wp_enqueue_style( 'books', get_stylesheet_directory_uri() . '/books.css', array(), rand(111, 9999));

字符串
这是可行的,但我很好奇为什么和如何以及是否有另一种解决方案,似乎并不奇怪。

f5emj3cl

f5emj3cl1#

如果我们仔细看看wp_enqueue_stylehttps://developer.wordpress.org/reference/functions/wp_enqueue_style/)的WordPress文档,第四个参数是**$ver**。
默认情况下,如果你省略它,它将默认为您的WP版本,即6.3.2。许多WordPress和托管缓存解决方案以及本地浏览器缓存使用CSS和JS文件的版本来***确定是否应该再次请求文件,也就是清除缓存版本***。
如果您不想缓存此文件,可以执行以下任何操作:

  • 从WordPress缓存插件中排除CSS文件
  • 从宿主缓存解决方案中排除CSS文件
    **然而,我不建议使用上述任何方法。**最好的做法是每次更改文件时更新ver,并且应该再次请求:
if ( ! defined( '_S_VERSION' ) ) {
    // Replace the version number of the theme on each release.
    define( '_S_VERSION', '1.0.0' );
}

function my_scripts() {
    // CSS Files
    wp_enqueue_style( 'books', get_stylesheet_directory_uri() . '/books.css', array(), _S_VERSION );
}
add_action( 'wp_enqueue_scripts', 'my_scripts', 200 );

字符串

相关问题