dede全站做移动跳转+适配,精通dede和PHP的来!

dede全站做移动跳转+适配,精通dede和PHP的来!,第1张

这是因为你的数据库命令设置的;处理完这个问题你有无法更新,那就存在两种可能你数据库

的设置命令只解开了一般,还有一个设置更新同步的功能没设置;二,就是你更新的内容的那个文件夹在模板中丢失无效也可能你更新的是动态的PNP语言的开源模板;你更新动态可以,静态就不行哈!

你要看一下你买的模板是不是自适应的呢,要是自适应的,就是PC端和手机端链接都一样,那就不需要做,手机端生成一下就可以同步了,如果不是,就去你的模板里看带m的就是移动端模板,要改什么直接改就行,和PC一样,但是在最后做完需要做一个PC端和移动端的适配。适配是比较复杂的一个步骤,到时候可以看适配规则上面的步骤详解。

考虑到中小型网站中Dedecms使用概率较高,今天我们特地邀请了百度站长社区版主—洪石陈来为大家做Dedecms移动适配分享。

第一步:安装Dedecms移动站点的两种方式

(1)下载新版本直接安装使用,Dedecms版本:V57SP1正式版(2015-06-18)该版本包含旧版本所没有的移动站点功能。

(2)老版本升级(仅针对增加移动站点功能),下载最新版本(注意网站编码需与原站一致),复制压缩包中以下文件到原站对应目录下:

注意:如果原站有非默认模板,如某栏目模板为/templets/defaultst_default_newshtm,可将/templets/defaultst_default_mhtm复制一份改名为list_default_news_mhtm。

即:pc端网站模板需有对应的移动端网站模板,后者文件名为前者文件名后“_m”。

安装或升级dedecms完成,此时应该就可以进行移动跳转适配了,但,dedecms20150618版本提供的移动站点功能在使用过程中发现一些问题,需要进行修改后才可正常使用,所以有了下面的dedecms修改步骤…

第二步:修改Dedecms

(1)原站如做了将DATA移到根目录外的安全设置,需修改/m/indexphp代码

if(!file_exists(dirname(__FILE__)'//data/commonincphp'))

{

header('Location:install/indexphp');

exit();

}

将其中//data/commonincphp改为///data/commonincphp,或直接将以上5行代码删除。

(2) 移动站点首页在会第一次访问时自动生成首页静态文件,前提是/m/目录需设置为可写权限,否则将无法正常更新。之后更新首页静态文件需登陆后台手动更新:在“更新主页HTML”中将“选择主页模板”改为“default/index_mhtm”,将“主页位置”改为“/m/indexhtml”,再生成主页静态文件。

注:该版本号称“自动生成HTML版”,但默认移动站模板里却有<ahref="indexphp">的动态首页链接,需替换为<ahref="indexhtml">静态链接形式。

※如觉得使用静态页面麻烦,想将首页设置为动态浏览,可修改/m/indexphp:

$row['showmod']= isset($row['showmod']) $row['showmod'] : 0;

if ($row['showmod'] == 1)

{

$pv->SaveToHtml(dirname(__FILE__)'/indexhtml');

include(dirname(__FILE__)'/indexhtml');

exit();

}

else {

$pv->Display();

exit();

}

以上代码替换为一行:$pv->Display();

第三步:首页“图文资讯”部分的url为pc端链接,修改为移动端链接:

搜索模板/templets/default/index_mhtm中所有<a href="[field:arcurl/]"> ,替换为<ahref="viewphpaid=[field:id/]">

第四步:通用头部含有搜索框,搜索跳转至pc端搜索页面,建议删除:

在/templets/default/header_mhtm中删除以下代码:

<form class="am-topbar-form am-topbar-leftam-form-inline am-topbar-right" role="search"action="{dede:globalcfg_cmsurl/}/plus/searchphp">

<input type="hidden" name="mobile"value="1" />

<input type="hidden" name="kwtype"value="0" />

<div class="am-form-group">

<input name="q" type="text"class="am-form-field am-input-sm" placeholder="输入关键词">

</div>

<button type="submit" class="am-btnam-btn-default am-btn-sm">搜索</button>

</form>

第五步: 移动站点默认使用二级目录,但目前移动适配需要使用二级域名(前段时间是可以使用二级目录的,但目前已调整,不能再提交二级目录),所以我们要设置移动站可通过二级域名访问,解析二级域名至网站所在服务器ip,并在服务器/空间上将二级域名绑定到/m/目录。

成功设置二级域名后,通过二级域名浏览网站会发现均无法显示,原因是路径有误——路径为“/uploads/x/yjpg”

相对根目录路径形式,在pc站页面中显示正常,因为pc站域名下存在该目录,而二级域名绑定的是二级目录,其中并不存在该目录,

所以访问会返回 404错误。对此,有多种解决方案,下面提供两个思路(示例pc站:wwwnt090com;移动站:mnt090com):

(1)URL 重写(推荐)

将对http://mnt090com/uploads/的访问重写 至http://wwwnt090com/uploads/,apache环境下,在/m/目录中的htaccess(如无则需新建)中增加以下代码即可:

RewriteEngine on

RewriteCond %{http_host} ^mnt090com [NC]

RewriteRule ^uploads/()$ http://wwwnt090com/uploads/$1 [L]

iis环境下类似规则。

(2)修改模板路径

在所有移动端模板中的<head></head>中增加:

<base href="http://wwwnt090com" />

再将代码中的

“<a href="listphp”改为完整路径“<a href="http://mnt090com/listphp”

“<a href="viewphp”改为完整路径“<a href="http://mnt090com/viewphp”

另:需将根目录下的/images/defaultpicgif(缩略图默认)复制到/m/目录下,否则列表页中如存在无缩略图的文章,对应缩略图位置会无法正常显示。

其他:

1、如有栏目不想在首页下方列表区域或通用头部显示,可在后台对应的栏目管理/常规选项中设置隐藏。

2、为了更好的实现pc端和移动端匹配效果,可在pc端模板增加类似如下代码:

首页

<meta http-equiv="mobile-agent"content="format=xhtml;url={dede:globalcfg_mobileurl/}/">

<scripttype="text/javascript">

if(windowlocationtoString()indexOf('pref=padindex')!= -1){}else{if(/AppleWebKitMobile/itest(navigatoruserAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/test(navigatoruserAgent))){if(windowlocationhrefindexOf("mobile")<0){try{if(/Android|WindowsPhone|webOS|iPhone|iPod|BlackBerry/itest(navigatoruserAgent)){windowlocationhref="{dede:globalcfg_mobileurl/}/";}elseif(/iPad/itest(navigatoruserAgent)){}else{}}catch(e){}}}}

</script>

栏目页

<metahttp-equiv="mobile-agent"content="format=xhtml;url={dede:globalcfg_mobileurl/}/listphptid={dede:fieldid/}">

<scripttype="text/javascript">

if(windowlocationtoString()indexOf('pref=padindex')!= -1){}else{if(/AppleWebKitMobile/itest(navigatoruserAgent) ||(/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/test(navigatoruserAgent))){if(windowlocationhrefindexOf("mobile")<0){try{if(/Android|WindowsPhone|webOS|iPhone|iPod|BlackBerry/itest(navigatoruserAgent)){windowlocationhref="{dede:globalcfg_mobileurl/}/listphptid={dede:fieldid/}";}elseif(/iPad/itest(navigatoruserAgent)){}else{}}catch(e){}}}}

</script>

文章页

<meta http-equiv="mobile-agent"content="format=xhtml;url={dede:globalcfg_mobileurl/}/viewphpaid={dede:fieldid/}">

<script type="text/javascript">

if(windowlocationtoString()indexOf('pref=padindex') !=-1){}else{if(/AppleWebKitMobile/itest(navigatoruserAgent) ||(/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/test(navigatoruserAgent))){if(windowlocationhrefindexOf("mobile")<0){try{if(/Android|WindowsPhone|webOS|iPhone|iPod|BlackBerry/itest(navigatoruserAgent)){windowlocationhref="{dede:globalcfg_mobileurl/}/viewphpaid={dede:fieldid/}";}elseif(/iPad/itest(navigatoruserAgent)){}else{}}catch(e){}}}}

</script>

代码中的{dede:globalcfg_mobileurl/}部分要替换为包含“http://”的二级域名(即:http://mnt090com),如不想修改模板里的相关代码,也可修改/include/commonincphp中的$cfg_mobileurl变量赋值为二级域名。

以上代码为dedecms新版模板所使用,第一行<meta>标签代码为百度发现跳转适配关系的方式(可同时使用)之一——“Meta标记”,下面几行javascript代码的功能是识别是否移动端设备访问,如是则将当前pc端页面自动跳转到匹配的移动端页面。

另外,还可使用<link>标签以便于百度更好地发现PC站和移动站的移动适配关系,在模板的<head></head>标签内加入如下代码:

PC站首页模板:

<link rel="alternate" media="only screen and(max-width: 640px)" href="http://mnt090com" >

PC站栏目页模板:

<link rel="alternate" media="only screen and(max-width: 640px)"href="http://mnt090com/listphptid={dede:fieldid/}" >

PC站文章页模板:

<link rel="alternate" media="only screen and(max-width: 640px)" href=" http://mnt090com/viewphpaid={dede:fieldid/}">

移动站首页模板:

<link rel="canonical"href="http://wwwnt090com/ "/>

栏目页模板:

<link rel="canonical"href="http://wwwnt090com{dede:type typeid='0' row=1}[field:typelink/]{/dede:type}"/>

文章页模板:

<link rel="canonical"href="http://wwwnt090com/{dede:fieldidrunphp='yes'}$id=@me;@me='';$url=GetOneArchive($id);@me=$url['arcurl'];{/dede:fieldid}"/>

至此,移动站架设基本成型。

提交移动跳转适配

URL对应关系示例:

1把defaul文件夹改成另外一个名字(随便你改,比如ccc),然后用ftp登录到你的空间,进入根目录下的

templets

文件夹,

打开

templets文件夹,把你下载下来的这5个文件夹和3个文件上传到空间的templets文件夹里面,让它替换里面的文件夹和文件。

2登陆网站管理后台-----系统----系统基本参数-----站点设置-----模板默认风格在右边空格中把原始dedecms默认文件名改成你上传ccc文件夹名字。

3、生成------更新主页html----选择主页模板然后选中自己上传的“ccc/indexhtm”模版,然后更新主页html,再更新全站。

4、设置单独频道风格

登陆后台

点击核心设置

网站栏目管理

选择一个

频道

点击更改

高级选项。

封面模板:填写ccc/index_articlehtm

列表模板:填写ccc/list_articlehtm

文章模板:填写ccc/article_articlehtm

5一键更新网站

  原子网络说:很多站长从网上下了织梦cms模板也不会用,走了很多弯路,其实只要模板齐全,只要操作三个地方就可以简单更换织梦模板。  1、要是下载的dedecms模板文件夹名是default与默认的模板文件名重复,必要改下文件名,然后上传到FTP里不要替换本来的default文件;登录网站管理后台---系统--系统基本设置---模板默认风格在右面空格中把原始dedecms默认风格文件名改为你上传的文件名。  然后更新网站:在生成--更新主页html--选择主页模板,然后选中已经上传的模板,然后更新主页html,再更新全站。  安装更换模板示例:  1、上传到网站FTP里的templets文件夹中,images替换本来的images文件夹,dede放在templets文件夹中;  二、登录网站管理后台---系统--系统基本参数---模板默认风格在右面空格中把原始dedecms默许文件名改为你上传dede文件名。  3、生成--更新主页html--选择主页模板然后选中本身上传的dede/indexhtm模版,然后更新主页html,再更新全站。  普通文章的三类模型板文件就是  article_articlehtm list_articlehtm index_articlehtm default文件夹里的文件首要有三类:按照文件名前缀来区别。  1、article_xxxx文章模型板  二、list_xxxx列表模型板  3、index_xxxx封面模型板  dedecms中发布内容有很多种类型:普通文章,软件,集,商品还有许多  查看每种模板用到的文件,点频道管理;内容模型管理;右侧有一列;管理;,点击一个小蓝色的图标模板,就能看到模板对应的文件了。

网站搬家的方法有很多。下面是最常用的一种方法:

一、进入织梦DedeCMS的后台备份数据库

步骤:系统 –> 数据库备份/还原 -> 全选所有织梦的数据表,然后点击提交

数据备份在网站根目录下的\data\backupdata文件夹里面

二、将原来空间上的所有文件下载到本地

三、将下载回来的文件上传至新空间

四、在新空间重新安装DedeCms

新空间安装DeDecms的方法:删除空间上的install(如果还存在)文件夹,在织梦官网上下载和你网站版本一致的源程序,将压缩包里面的 install文件夹上传至新空间。接着,运行http://你的域名/install进行安装。需要注意的是:数据库表的前缀必须和原数据库表的前缀必 须一致,如果你没有进行过修改,按默认操作即可;安装初始化数据进行体验(体验数据将含带DedeCMS大部分功能的应用操作示例,这个选项不要勾选)。

五、进行数据还原

安装完后,登陆后台,点击 系统管理 –> 数据库备份/还原 –> 数据还原,全选发现的备份文件,(注意:附加参数中的还原表结构信息不要勾选)。

六、点击开始还原数据

七、清除缓存,然后一键更新网站

DedeCMS v57

1支持MySQLi并且调整缓存处理,性能提升

V57新版本默认开发时,测试数据50W,这个容量对于中小型站长已经足以,当然我们不排除有百万、千万级数据的用户需求,这部分的用户我们也有专门的优化方案,可以通过服务列表,了解更多……

2完美兼容PHP53/52+/4版本

PHP官方已经发出所有程序转移到PHP53的号召,但是对于很多主机服务商,很多技术员还没有适应新版本带来的改变,这里我们完美兼容各个PHP主流版本。

3新版客服中心帮你解决疑问,问答模块同步升级

很多人抱怨论坛问题不能及时解决,其实很多问题是不愿重复解决,但拘泥于论坛这种以灌水娱乐为主的地方很难形成技术气氛,官方采用新版问答模块重构客服中心,让大家的疑问能够更快、更方便的得得到解决。

4全新分词组件,让分词更准确、更高效、更快速

新版本系统采用全新分词组件,该分词采用PHP语言进行架构,分词速度快并且执行效率高,当然分词词库也支持自定义,占用内存小等优点,不信去读读代码吧。

5Sphinx全文检索支持

为了满足部分商业用户的需求,新版本检索将支持Sphinx全文检索引擎,当然我们也配有详细的说明文档,全文检索不再困难。

6模块MVC架构

系统问答模块本次采用MVC进行了重构,接下来我们会对整个系统逐步进行重构,在保证系统易用性的同时逐步培养我们自己的技术开发合作联盟,相信未来的织梦会更开放。

7win7模式兼容问题

55以上版本尤其是57sp1版本在win7模式下安装完成后,登陆后台时候会发现白屏,处理方式:

在include找到 userloginclassphp文件,末尾加上session函数库。

function session_register(){ return true;}

如图:

缘由:在php40的时候推出就给了使用者一个函数库:session函数库,靠这个函数库里的函数很方便的实现ID识别问题 首先需要把对方网站的CSS风格样式以及下载下来。把对方要仿制的页面的

html代码复制下来,保存为html文件。

第二,搭建好网站,把保存的文件都放到网站中,用网址访问,观察是否正常

显示,是否缺少文件、

第三,安装好织梦。把保存文件对应的放在织梦的模板目录中。对应设置好仿站的

页面以及CSS及其目录。

第四,填写标签。把保存的HTML代码里面的文章代码用织梦标签替换。重新生成织梦

文档。观察代码显示是否正常。

第五,全局测试,观察是否代码都显示出来,文件对应是否完整。

第六、织梦CMS_V57仿站标签手册 1、以下目录:data、templets、uploads、a设置可读写不可执行权限。其中a目录为文档HTML默认保存路径,可以在后台进行更改;

2、以下目录:include、member、plus、dede设置为可读可执行不可写入权限。其中后台管理目录(默认dede),可自行修改;

3、如果不需要使用会员、专题,可以直接删除member、special目录;

4、删除install安装目录;

5、管理员帐号密码尽量设置复杂,发布文章可以新建频道管理员,并且只给予相关权限;

6、Mysql数据库链接,不使用root用户,单独建立新用户,并给予:SELECT、INSERT、UPDATE、DELETE、CREATE、DROP、INDEX、ALTER、CREATE TEMPORARY TABLES权限;

7、定期进行备份网站目录和数据库,并在后台进行文件校验、病毒扫描、系统错误修复;

8、改变织梦data目录位置。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » dede全站做移动跳转+适配,精通dede和PHP的来!

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情