php页面怎么改造mip,代码适配的网站如何进行mip改造

最近一个小站需要进行mip改造,网站是代码适配的网站。就是电脑访问返回电脑端的页面,手机端访问返回手机端的页面。网站的url是相同的。改造后在百度提供的在线验证工具中进行了测试,全部通过测试。然后在站长后台进行了提交。提交后大概等了半个月也没有通过校验,同时也没有错误的提示。

a20aacd41d11467807276cb483162057.pngmip改造-通过子目录的形式

最后在百度的mip群里得到这样的回复

因为只有移动UA才返回mip页面,这样比较容易出现问题,我们技术小哥哥建议最直接的解决办法是建立一个专用的页面,无论什么UA访问都返回MIP的页面

这样就知道问题出现在哪里的,同时也知道该怎么修改了。

代码适配mip改造的方法

因为代码适配相同网址的原因导致了失败。所以就要需要对mip页面提供单独的网址即可。常用的有两种方法

1. 子域名的方式,比如 mip.liuhaolin.com

2. 子目录的方式,比如 www.liuhaolin.com/mip/

方法很多,可以通过服务器重写+内容替换实现,也可以通过修改网站的程序实现。因为我改造的网站程序是用的wordpress,直接修改程序也比较简单。这里记录一下操作的步骤。

通过子目录的方式进行修改

改造的结果应该是,每个链接前面都增加一个 /mip, 比如 www.liuhaolin.com/about.html 改造后应该是 www.liuhaolin.com/mip/about.html。同时应该做到返回的页面是 mip类型的页面。

需要解决的第一个问题,网站的链接上增加的 /mip, 网页还是可以正常打开的问题。在模板的 functions.php 中添加

# 记录一下原始的uri, 用于判读这个页面是否是 mip url。

$origin_uri = $_SERVER['REQUEST_URI'];

# worpdress的路由是基于$_SERVER['REQUEST_URI'],这样 url 中的mip/ 就是透明的,不影响正常的执行。

$_SERVER['REQUEST_URI'] = str_replace('mip/', '', $_SERVER['REQUEST_URI']);

# 判断是否是一个mip页面

function is_mip() {

global $origin_uri;

return strpos($origin_uri , 'mip/') === 1;

}

对于详情页的链接改造

如果是 mip 就在链接上加上 /mip

add_filter('post_link', function ($link, $post = 0) {

if(is_mip()) {

$link = str_replace( home_url(), home_url() . '/mip', $link);

}

return $link;

});

对分类的链接的改造

如果是 mip 就在分类的链接上加上 /mip

add_filter('category_link', function ($termlink, $id) {

if(is_mip()) {

$link = str_replace( home_url(), home_url() . '/mip', $termlink);

}

});

其他的具体修改就和具体的代码有关系了,比如网站是如何适配的,就是如何加载不同的模板的。通过 is_mip函数判断一下,如果是mip页面,就加载对应的mip页面。最后处理一下细节,可以 robots.txt 添加禁用禁止抓取目录 /mip/目录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值