DedeCMS实现URL不变PC和移动端展示不同模板

作者: 本站原创  发布时间:  浏览:

今天我们分享一篇实现URL不变PC和移动端展示不同模板的方法,文章来源重庆SEO吖七博客,复制请保留原创超链接:https://www.vi586.com/web/755.html。

做移动端的方法吖七介绍过许多,除了流行的小程序,目前移动端主流的方式有通过二级目录或二级域名的实现,也可以用CSS自适应的方式实现。当然,如果网站的后台不支持,也可以通过向百度提交移动端转码规则实现,但功能及模板比较单一。下面通过URL了解:

PC端与移动端URL主流方式(静态/伪静态)

PC端:http://www.xiuzhanwang.com/

移动端URL(1):http://www.xiuzhanwang.com/m/

移动端URL(2):http://m.xiuzhanwang.com/

另外还有许多动态URL方式,至于哪种方式比较好,百度官*方表明将一视同仁,那大家就不必追求了,但是要做好必要适配。

建议大家采用URL不变的的自适应做法,虽然不存在权重更集中的说法,但从本人做很多网站SEO优化的结果上看表现更好些。

移动端采用CSS自适应主要优点

当然,老网站模板改起来比较麻烦,重构的时间成本反而更低。下面介绍另一种做法:适合动态或者伪静态的网站,URL保持不变,通过服务器判断(PHP方法)来访用户的客户端,选择不同的模板展示给用户。

 

URL不变PC和移动端展示不同模板

找到/include/extend.func.php,最下面增加以下代码

/**

 * 判断是否为移动设备访问

 * @return bool

 */

function isMobile()

{

    if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) {

        return true;

    }

    if (isset($_SERVER['HTTP_VIA'])) {

        return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false;

    }

    if (isset($_SERVER['HTTP_USER_AGENT'])) {

        $clientkeywords = array('nokia', 'sony', 'ericsson', 'mot', 'samsung', 'htc', 'sgh', 'lg', 'sharp', 'sie-', 'philips', 'panasonic', 'alcatel', 'lenovo', 'iphone', 'ipod', 'blackberry', 'meizu', 'android', 'netfront', 'symbian', 'ucweb', 'windowsce', 'palm', 'operamini', 'operamobi', 'openwave', 'nexusone', 'cldc', 'midp', 'wap', 'mobile');

        if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) {

            return true;

        }

    }

    if (isset($_SERVER['HTTP_ACCEPT'])) {

        if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'textml') === false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'textml')))) {

            return true;

        }

    }

    return false;

}

 

1.首页处理

 

打开/index.php,找到

    $row['templet'] = MfTemplet($row['templet']);

在上面增加代码

if(isMobile()){

 $row['templet'] =str_replace('.htm','_m.htm',$row['templet']);

}

2.列表页/内容页/搜索页/TAG页面处理

打开/plus/list.php,/plus/view.php,/plus/search.php,/plus/tags.php找到

require_once(dirname(__FILE__)."/../include/common.inc.php");

下面增加代码

if(isMobile()){

 define('DEDEMOB', 'Y');

}

这样就处理完毕了,首页PC模板 index.htm 对应的移动端模板为 index_m.htm,以此类推,PC对应的移动端模板命名方式".htm"前面加"_m",也就是"_m.htm",需要放在同一模板目录下。移动端模板调用的图片、js、CSS等需要调整好路径,以免造成错误。

/m目录可以直接删除了,不会对系统造成任何影响,也不需要对移动端页面里面的URL进行改写。

上一篇:织梦程序网站防采集复制提示版权超链接代码

下一篇:织梦专题不同节点不能选取同样文章的解决方法

相关文章

织梦打官司赢了还是输了

dedecms织梦网站停止使用了还侵权吗

被织梦起诉的案例

织梦中英文等多语言站点分页方法

织梦dede:arclist及dede:list调用tag标签(适用

添加微信
添加微信,免费咨询

15205695834

新手指南支付购买售后服务关于我们版权合规
合肥秀站网络科技有限公司
Copyright 2002-2022 麦站 版权所有
皖ICP备12018676号 网站地图