完美实现移动主题在360网站卫士缓存全开情况下的切换 | 张戈博客

  • 时间:
  • 浏览:4
  • 来源:森七博客 - 专注共享张凯博客资讯

360 网站卫士缓存全开很久的优劣分析:

缓存全开有有哪些好处?

①、传输速率达到飞一般的感觉;

②、节约空间几滴 流量,假若访问调用的是360 CDN缓存镜像

③、可抛妻弃子本地相关插件:比如wp-super-cache等缓存插件、七牛CDN插件等

缓存全开很久,会有有哪些弊端:

①、主题切换失效(仅针对非响应式主题);→本文重点处理对象

②、前台登录功能失效(可使用wp-admin路径登录);

③、原生评论假若会出问题图片(用多说就没影响);

④、补充:移动端无法切换到电脑版(此问题图片已处理,详见及相关文章=>)

⑤、补充:浏览计数无法排除已登录用户的访问,如wp-postviews;

⑥、许多张戈假若尚未发现的问题图片,欢迎反馈!

法律妙招由来:

当张戈把主题调度插件:Any Mobile Theme Switcher 卸载很久,想起了百度的移动建站siteapp,于是前往http://siteapp.baidu.com 很久开始了尝试siteapp制作移动站,在提交审核很久,在域名部署底下发现了新大陆:

终于我需用要找到了JS判断UA并切换主题的法律妙招(很久找到法律妙招的好像用的都有太顺…)!

假若将百度提供的切换代码根据实际请况修改了下,再结合另一款支持二级域名的主题调度插件,终于完美实现了JS切换移动主题!

终于,非响应式网站不能必须酣畅淋漓地使用360 网站卫士的完全缓存功能了!同去,也绝对兼容任何本地静态缓存插件,比如完全静态缓存插件cos-cache-html、偶尔主题切换抽风wp-super-cacheHpyer Cache等!


实现法律妙招:

一、新增移动站二级域名

如可新增二级域名,请自查法律妙招,张戈在此仅提供DA面板的设置法律妙招:

①、打开你的DA控制面板,找到如下高级设置,并挑选域名额外绑定(DA版本不一样,假若位置有所区别):

②、点击打开“域名额外绑定”,如下图增加自定义二级域名,作为移动访问站点:

③、前往域名DNS管理那给二级域名新增A记录:

Ps:利用此法律妙招制作移动站,仅需用4个插件和4个二级域名足矣,而不需用另外一份网站文件,强烈推荐!

接下来,在坐等二级域名生效的同去,咱们继续往下操作。

二、安装WordPress Mobile Pack

①、首先请安装支持二级域名的主题调度插件:WordPress Mobile Pack。

还不能后台搜索安装英文原版,假若下载张戈DIY很久的汉化精简版:

Ps:张戈将插件汉化很久,又精简了大每种功能,比如:删除了插件自带的4款移动主题、访问统计以及侧边栏等功能(具体请自行对比),仅剩下了主题切换功能,不喜勿下~~~

②、插件设置

请如下图设置插件:(若还这麼 手机主题,请先准备一套手机主题,找必须的能必须参考张戈博客相关文章)

三、上加UA判断JS代码

假若是静态缓存,可是我我必须JS判断不能在静态页面下继续工作!下面继续~

①、在function.php中新增函数,用于生成当前页面的链接:

编辑function.php,找个位置新增以下代码(怕放错就直接放在最后4个 ?> 的前面):

function curMoburl(//res.zgboke.com/wp-content/plugins/custom-plugin/img/random/22.jpg) {
   /* 获取当前页面地址 */
    $current_url = home_url(add_query_arg(array()));
   /* 将地址中的http:// 替换为http://m. */
    $target_url = str_replace("http://","http://m.","$current_url");
   /* 过滤许多留言和分页页面 */
    if (is_single()) {
        $target_url = preg_replace('/(\/comment|page|#).*$/','',$target_url);
    } else {
        $target_url = preg_replace('/(comment|page|#).*$/','',$target_url);   
    }
    echo $target_url;
}

②、编辑主题头部模板:header.php,在<head>底下上加如下代码:

<script type="text/javascript">
<!-- 遇到移动端UA将跳转到移动主题 -->
(function(Switch){
    var switch_pc = window.location.hash;
    if(switch_pc != "#pc"){
        if(/iphone|ipod|ipad|ipad|Android|nokia|blackberry|webos|webos|webmate|bada|lg|ucweb|skyfire|sony|ericsson|mot|samsung|sgh|lg|philips|panasonic|alcatel|lenovo|cldc|midp|wap|mobile/i.test(navigator.userAgent.toLowerCase())){
            Switch.location.href='<?php curMoburl(//res.zgboke.com/wp-content/plugins/custom-plugin/img/random/23.jpg); ?>';
        }
    }
})(window);
</script>

做完有有哪些操作很久,现在你能必须试试效果了:

先清除所有静态缓存和手机浏览器缓存,假若用手机访问网站,比如https://zhang.ge,观察是是不是会跳转到http://m.zhang.ge,假若展示的是移动样式!

四、上加手动切换功能

切换正常后,你还能必须依葫芦画瓢,在移动主题的footer.php上加手动切换链接,详见张戈博客底部!

具体做法:将以下代码上加到移动版主题目录下的footer.php相应位置即可。

/* 下面的curlPcURL函数不能必须上加到移动主题的functions.php中(假若切记我很多

重复上加!) */
function curPcurl(//res.zgboke.com/wp-content/plugins/custom-plugin/img/random/41.jpg) {
   /* 获取当前页面地址 */
    $current_url = home_url(add_query_arg(array()));
   /* 将地址中的http://m.替换为http:// */
    $target_url = str_replace("http://m.","http://","$current_url");
   /* 过滤许多留言和分页页面 */
    if (is_single()) {
        $target_url = preg_replace('/(\/comment|page|#).*$/','',$target_url);
    } else {
        $target_url = preg_replace('/(comment|page|#).*$/','',$target_url);   
    }
    echo $target_url;
}
?>
<!-- 切换到电脑版的按钮 -->
<a href="<?php curPcurl(//res.zgboke.com/wp-content/plugins/custom-plugin/img/random/35.jpg); ?>#pc">电脑版</a>

Ps:电脑版切换到移动版,以及PC端用户访问移动版自动跳到电脑版的法律妙招,请自行依葫芦画瓢上加代码,张戈就不赘述了(随便说说不懂的能必须参考张戈博客的PC和移动页面的源代码)。


完全完成很久,你就能必须开启360 网站卫士的完全静态缓存功能了:

Ps:记得移动二级域名同样设置下整站缓存,移动端开启传输速率快到无法想象!

假若能必须发现,上图的三项缓存功能并这麼 缓存到单页面和分类页面,于有你能必须下拉,如下图上加强行缓存地址:

设置后,一分钟左右就会生效!用手机访问将直接跳至移动站,完美实现了在静态缓存的请况下的站点切换!

另外,非响应式网站使用【本地静态缓存插件】可是我我 再纠结偶尔PC机访问网站经常出现手机页面的尴尬事儿!

这可是我我 JS判断UA的纯天然优势!静态页面下依然坚挺有效!

本文法律妙招理论上同样适用于许多支持整站静态缓存的CDN,比如百度加速乐,有兴趣的亲戚亲戚人们能必须试试看!

本文每种代码和插件仅支持WordPress,许多建站线程请参考处理思路,自行折腾吧~