我有一个网站,已建成使用骨头wordpress主题。无论我做什么,我似乎都无法使用wordpress enqueue函数对css和js进行版本控制。
是不是有什么东西在骨头里,也许是一个我找不到的过滤器,它正在剥离版本?
欢迎提出任何建议。
谢谢
你可能很幸运,它不是默认的,大多数人试图删除它,因为它默认是Wordpress的版本号(为什么?)
我发现添加它的最好方法是将my_wp_default_styles函数添加到functions.php中。还有一个巧妙的技巧是检查主css文件的最后修改日期,并将其作为版本时间戳。
function my_wp_default_styles($styles) {
$styles->default_version = filemtime(get_template_directory() . '/style.css');
}
add_action("wp_default_styles", "my_wp_default_styles");
我找到了!
在Bones主题中有一个过滤器,它可以删除所有CSS/JS版本控制。
看看bones-theme/library/bones.php
文件,你有一个过滤器函数
// ~L.48
add_filter( 'style_loader_src', 'bones_remove_wp_ver_css_js', 9999 );
/** Some code **/
// ~L.89
function bones_remove_wp_ver_css_js( $src ) {
if ( strpos( $src, 'ver=' ) )
$src = remove_query_arg( 'ver', $src );
return $src;
}
你既可以编辑它,也可以删除钩子,并将你的版本控制放在wp_enqueue_script()/wp_enqueue_style()函数中。