技术帝的平台展示,网站建设、网站推广、SEO技术、网站优化、电子商务推广、平面美工和软件测试等技术干货分享。

phpcms移动站wap改造为MIP及模板分享

phpcms技术 abel-lan 96℃ 0评论

摘要

phpcms作为广泛使用的cms系统,对于服务器带宽有限或是租空间,为了提升移动端访问速度,同时优化网站排名,可以上线MIP。现将PHPCMS的wap改MIP方法分享给大家,不过坑爹的是2020年6月30日后百度下线MIP Cache服务,大家可能不再需要该功能,但将改造过程分享给大家,供学习参考。

phpcms网站MIP改造

phpcms网站MIP改造
phpcms网站MIP改造

最近突击完成了PHPCMS网站wap改造为mip,正准备上线,却突然发现万恶的百度将MIP Cache服务下线(2020年6月1日 – 2020年6月30日:关闭站长平台 MIP 入口,逐步清退下线 MIP Cache 服务)。真是坑爹的百度啊,干啥都没用心做过,MIP做了三年不做了,熊掌号做了两年,也不做了。每次开始做一个新东西,都是大张旗鼓,用提升排名来当诱饵,让广大客户使用,真的等到客户用了,百度却发现不挣钱,又开始下线,真是把客户当猴耍,再次在心里默默怀念Google,现在的百度完全变成了自己家的搜索引擎,而且搜的内容还很垃圾。
虽然MIP下线了,不过自己既然做好了,还是分享出来,供大家参考,做的过程还是蛮辛苦的。而且思路很重要,可以供需要的朋友学习使用。

改造过程

一、修复系统bug

修复系统bug,更改站点子域名(设置m子域名,该步骤根据自身需要)
当通过修改phpcms手机门户域名绑定来更改m子域名,会导致链接显示为PC的,这是由于系统自身bug造成,\phpcms\modules\wap\index.php文件第13行定义WAP_SITEURL常量有bug来修复系统bug

//源代码:
//    define('WAP_SITEURL', $this->wap['domain'] ? $this->wap['domain'].'index.php?' : APP_PATH.'index.php?m=wap&siteid='.$this->siteid);
//修改后代码:
    define('WAP_SITEURL', $this->wap['domain'] ? $this->wap['domain'].'index.php?m=wap&siteid='.$this->siteid : APP_PATH.'index.php?m=wap&siteid='.$this->siteid);

二、替换图片和其他MIP不支持元素

1、在 /phpcms/modules/wap/functions/global.func.php 最底部添加以下代码,并根据需要添加其他MIP不支持的元素处理代码(比如form、iframe等),注意需要自己再完善扩充

/**
 * mip内容替换
 */
function content_mip($content) {
    $content = preg_replace('/<img[^>]*src=[\'"]?([^>\'"\s]*)[\'"]?[^>]*>/i', "<mip-img data-carousel=\"carousel\"  class=\"mip-element mip-img\" src=\"$1\"></mip-img>", $content); //匹配替换过的图片
    $content = preg_replace("/style=.+?['|\"]/i",'',$content);
    return $content;
}

2、模版调用的标签
正文标签:{content_mip($content)}

三、修改wap内容替换函数

修改 /phpcms/modules/wap/functions/global.func.php文件中的content_strip函数(第134行)。该函数将wap不支持的标签全部过滤掉了,需要将MIP支持的元素加上或将该过滤语句屏蔽(函数中strip_tags所在的语句)。另外函数传递参数$ishow会在图片下部加上查看大图的链接,需要将函数参数改为$ishow=0,以下是替换后的代码,需要自己再完善扩充

/**
 * 内容中图片替换
 */
function content_strip($content,$ishow=0) {
    if($ishow!=1) $ishow=0;
   $content = preg_replace_callback('/<img[^>]*src=[\'"]?([^>\'"\s]*)[\'"]?[^>]*>/i', "wap_img_$ishow", $content);  //匹配替换过的图片
   $content = strip_tags($content,'<h1><h2><h3><h4><h5><b><br><img><p><div><a>');
   return $content;
}

四、模版下载

模板样式只做了简单的展示,需要的自行修改。在此提醒大家,MIP只支持utf8编码,如果用了gbk,要将内容转换为utf8。附件是需要的模板文件。
模版使用了:侧边栏、回到顶部、焦点图轮换、百度统计等功能,自己根据需要进行修改

五、添加关联标签

在移动端页面(H5)或PC页面添加指向对应内容的 MIP 页

    <link rel="miphtml" href="">

六、后台设置

开启手机门户,并设置站点信息(需设置站点名称,将内容页分页字节数调到最大,这样避免分页);在手机门户=》分类管理中,添加需要mip站点展示的栏目内容。

七、MIP代码检查

通过“MIP 代码校验工具”检查mip内容页面展示是否有误,所有类别的页面都要测试一遍,重点关注mip不支持的元素。至此改造完成,感谢大家的观看,有疑问的请给我留言,我会及时回复大家的。

附件:phpcms移动站wap改造为MIP及模板文件

转载请注明:半亩方塘 » phpcms移动站wap改造为MIP及模板分享

赞 (6)支付宝扫码打赏微信扫码打赏分享
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址