WordPress如何分别开启Redis对手机和PC缓存?

2019年4月7日16:50:18 发表评论 387 阅读

WordPress如何分别开启Redis对手机和PC缓存?WordPress开启Redis浏览速度大幅提升,这一点小编的确深有体会的,的确打开速度快了很多,不过还是有一些小问题。比如主题大量使用wp_is_mobile()函数来做判断然后对手机和pc的界面进行区分的话,问题还是不少,浏览统计只是仅仅其中之一。下面77生活网小编就来与大家简单的分享一下。

WordPress如何分别开启Redis对手机和PC缓存?

对PC访问和手机方案分开进行缓存,然后根据访问者是否为移动设备来读取不同的缓存。当然实现方法也很简单,只需简单修改index-with-redis.php文件(如果修改为index.php的就直接修改它就行了),具体修改如下:

首先加入判断时候为手机设备的判断函数,这里直接引用了wp自带的判断函数,仅仅修改了函数名:

/*判断移动浏览器*/
function redis_is_mobile(){
static $is_mobile;
if( isset($is_mobile))
return $is_mobile;
if( empty($_SERVER['HTTP_USER_AGENT'])){
$is_mobile =false;
}
else if ( strpos($_SERVER['HTTP_USER_AGENT'],'Mobile')!==false
|| strpos($_SERVER['HTTP_USER_AGENT'],'Android')!==false
|| strpos($_SERVER['HTTP_USER_AGENT'],'Silk/')!==false
|| strpos($_SERVER['HTTP_USER_AGENT'],'Kindle')!==false
|| strpos($_SERVER['HTTP_USER_AGENT'],'BlackBerry')!==false
|| strpos($_SERVER['HTTP_USER_AGENT'],'Opera Mini')!==false){
$is_mobile =true;
}else{
$is_mobile =false;
}
return $is_mobile;
}

将本段函数写到index-with-redis.php的尾部,当然其他位置也可以。

然后在修改

$dkey = md5($domain);
$ukey = md5($url);

为以下代码:

if(!redis_is_mobile()){
$dkey = md5($domain);
$ukey = md5($url);
}elseif(redis_is_mobile()){
$dkey = md5($domain.'+mobile');
$ukey = md5($url.'+mobile');
}

保存即可,然后就试试吧,看看是不是已经解决了手机和pc分开缓存的问题?折腾还会有收获,才会有进步。

推荐:宝塔如何使用Redis加速网站?WordPress启用Redis为网站加速教程

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 你领一次红包多一份动力
  • 支付宝搜索7503319领取
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: