Welcome, Old Sport!

给CSS的链接添加随机版本

by ilikecss ON 2013/02/23 7042

给CSS的链接添加随机版本这个是我一直想做的事,一般你安装过某插件,插件里含有CSS样式表的话会在你调用插件的页面生成这个CSS的URL,一般会以href=”css?ver=x.x.x”形式出现,感觉就像是把这个CSS名字重命名了,点击链接还是原来的那个CSS不会有变化的。在wordpress里提供了wp_get_theme()函数,我们可以利用它来获取主题自带的CSS链接,从而对它进行版本控制,一起来看下教程吧。

1. 获取wordpress的版本信息

// get theme version
function name_get_version() {
	$theme_data = wp_get_theme();
	return $theme_data->Version;
}
$theme_version = name_get_version();
global $theme_version;

2. 取得版本随机数

// get random number
function name_get_random() {
	$randomizr = '-' . rand(1,999); // 随机数字自定
	return $randomizr;
}
$random_number = name_get_random();
global $random_number;

3. 匹配相应的CSS

function name_queue_css() {
	global $theme_version, $random_number;
	if (!is_admin()) {
		wp_register_style('custom_styles', get_template_directory_uri() . '/your_path/your_path/xxx.css', false, $theme_version . $random_number); // 路径这里特别注意,根据自己主题目录设置
		wp_enqueue_style('custom_styles');
	}
}
add_action('wp_print_styles', 'name_queue_css');

注意:以上代码都是添加到function.php文件里面的,根据这个方法我们也可以针对自带的javascript来进行随机化版本设置

CSS随机版本参考图

9条评论
  1. #1

    axiu说道:

    呃……加载一次换一次随机数?

  2. #2

    啄木游弋说道:

    恕我直言,这是个极为蛋疼的功能 :?:

  3. 更新后,为了避免缓存,有事还是必要的。

  4. #4

    ADD~``说道:

    话说, 可不可以检测下文件的最后修改时间, 然后用那个作为”随机”随机版本号.
    这样, 如果没改过, 虽然每次都会重新加, 但是对用户而言是没变的~

    • 估计那要获取其他wp里的时间函数了,这个方法只是自己添加了一个随机数




TOP