dede专题提供dede的最新资讯内容,帮你更好的了解dede。
1、去掉添加时默认勾选状态。 在 系统->系统基本参数->其它选项 中,如图中的三个选项选择否即可。 设置完后可以看到添加时已经默认不勾选,但是编辑文章时还是默认勾选状态。 2、去掉编辑时
dedesmc 手机端生成静态页 1、首先下载插件,下载地址:https://pan.baidu.com/s/1Nfx_KBYuxRkZ7VzoPxy28g 密码:83x7 2、进入 dedecms
在dedecmsv5.7里面使用session的话要注意开启方式!和PHP源码里的使用方式不一样!!! 开启session,前面必须要@ @session_start(); 启动session,前面必
如何在PHP文件查询出来的数据赋值给前端页面展示出来? 例如: PHP文件:agency.php 前端模版:edit_face.htm 或者: 输出变量:{dede:global.变量名}
目前DEDECMS的优化做的已经很好了,但是在URL的长度控制上,个人感觉还是有欠缺的。这里专门来说一下对于织梦CMS缩短URL长度的方法。一:去掉a目录和html目录大家都知道,DEDECMS5.5版已经把根目录html给改成了a目录了,本意就是为了减少URL的长度。但是我们要做的是,把a目录也抛弃。方法很简单,在系统设置中,把文档HTML默认保存路径这个地方的/a删除,只留下/ 。html目录删除方法一样。或者在栏目管理中,选择对应栏目更改,把文件保存目录后的a删除。作出这些改编后,以前的 http://网站域名/a/年/月日/文档ID.html 就变成了 http://网站域名/年/月日/文档ID.html 形式了。但是至此,革命尚未成功,同志仍需努力,看第二步。二:去掉日期分类目录:用DEDEcms做的网站,在默认的状态下,链接形式是 http://网站域名/a/年/月日/文档ID.html 这里,我们的目的是 http://网站域名/目录名/文档ID/ 是不是很短了?方法:其实织梦在5.5版的时候已经提供这个功能了。登陆后台——修改参数——其他设置——是否允许用目录作为文档文件名,文档命名规则需改为: {typedir}/{aid}/index.html:是 否 看到了吗?选择是,然后在网站栏目管理——相应栏目点更改——高级选项——文章命名规则,这里填上{typedir}/{aid} /index.html。更新一下栏目html,就变成了http://网站域名/目录名/文档ID/ 的形式了。
1.首先制作sitemap模板新站一个记事本文件,把文件名改成sitemap.xml(记得后缀亦改),然后用记事本格式打开,粘贴下面的一段代码(*处用自己首页域名代替),将它上传至模板目录,比如templets/default中:<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.google.com/schemas/sitemap/0.84"><url><loc>http://www.gsjiewang.com/</loc><lastmod>{DEDE:arclist row=1 titlelen=24 orderby=pubdate}[field:pubdate function=strftime('%Y-%m-%d',@me)/]{/DEDE:arclist}</lastmod><changefreq>daily</changefreq><priority>1.0</priority></url>{DEDE:channel row='23' type='top'}<url><loc>http://www.gsjiewang.com[field:typelink /]</loc><changefreq>daily</changefreq><priority>0.8</priority></url>{/DEDE:channel}{DEDE:arclist row=2000 orderby=pubdate}<url><loc>http://www.gsjiewang.com[field:arcurl/]</loc><lastmod>[field:pubdate function=strftime('%Y-%m-%d',@me)/]</lastmod><changefreq>monthly</changefreq></url>{/dede:arclist}</urlset>其中channel row是网站的频道数量,arclist row是文章数量(可以往一个上限值设),根据实际要求更改。将上面的http://liumiao.me改成你网站的首选域名2.生成sitemap.xml前面所制作的仅是模板,现在通过dede后台的html更新>>主页更新向导来生成。在选择主页模板中填入模板路径,比如 default/sitemap.xml,在主页位置填入../sitemap.xml,然后点更新主页html即可。通过以上简单的两步,google sitemap制作完成。上传的步骤在这里就不再啰嗦了。点击看大图演示:
DedeCMS系统运行对系统目录的权限是有非常严格的需求的,用户需要按照安全设置对自己的站点目录权限进行配置,同时在更新中我们加入了安全检 测工具。点击后台系统首页提示中的“全面检测”,或者展开首页面板中的“系统信息”,点击“DedeCMS目录权限检测工具”,来进行权限检测(如图 2)。这里分别对DedeCMS系统涉及到的站点目录中执行、读取、写入权限进行检测,尤其是执行权限,是安全设置中的重要环节,具体配置可以参看:《如何取消服务器/主机空间目录脚本的执行权限》。
安全问题一直是业界的一个热点话题,根据当前的数据显示,许多站长的安全意识不高,没有对服务器进行相对安全的权限设置,安全问题就显得尤为突出。其实大部分的安全问题都是可以防御的,和使用电脑一样,我们的网站也要做好安全防御。针对目前的安全形势,由 天涯、Fanr 共同制作出一款用来检测站点安全设置的工具:织梦安全检测工具V0.0.1欢迎反馈问题,建议以及意见,能够hold住。织梦安全检测工具使用说明:1.下载附件2.上传至网站根目录3.访问 http://host/dedesafe.php4.根据页面提示信息,进行相应的安全设置5.使用完成后建议删除本文件!下载:dedesafe.php
不少朋友在登陆DedeCMS后台的时候遇到验证码错误的问题,明明已经正确输入了,却提示错误,导致登录不进后台。如果遇到这个问题,可以通过下面的方法检测修复。1、空间满了。我遇到的验证码错误都是空间满了,如果也遇到验证码错误的问题,可以先检查是否空间满了。2、用ftp进入你的dedecms程序空间,把data/session目录下除index.htm外的其它session文件都删除,然后本地ie浏览器清除缓存。重新登录dedecms后台试试看。3、可以取消掉验证码,具体方法如下实现的方法一共分为两步来进行:打开 login.php 找到:if($validate=='' || $validate != $svali)替换为:if( false )然后,在模板dede/templets/login.htm里去掉以下验证码的具体HTML代码:<li><span>验证码:</span><input name="validate" type="text" id="vdcode” width:50px;text-transform:uppercase;" /><img id="vdimgck" src="../include/vdimgck.php" alt="看不清?点击更换" align="absmiddle" cursor:pointer" onclick="this.src=this.src+'?'" /></li>
之前一直没有用织梦CMS V5.7的搜索功能,今天刚测试一下,发现搜索很忙,看到了华强的这篇文章,终于知道是什么情况,转载到博客。一、问题原因由于在织梦CMS V5.7版中,新增了利用“配置sphinx技术”(Sphinx技术百度百科解释:http://baike.baidu.com/view/807043.htm)的文档“全文检索”的功能,并且默认打开了此功能。而大多数的用户站点中,又没有配置或没有条件配置全文索引技术,这就造成了每次前台在搜索的时候都去连接Sphinx服务器,而这个服务器却又不存在。二、解决方法用超级管理员的身份登录网站后台,点击【系统】选项卡,进入“系统基本参数”页面,点击“其它选项”,找到“是否启用文章全文检索功能(需配置sphinx服务器):”项目,将其设置为“否”,保存即可。如下图:三、注意事项该设置是立即生效的,无需生成前台HTML页面,只是当遇到无效的时候,可以试着清理一下全站缓存!转自:http://www.xuewl.com/use/201109/1316179197.html
织梦目前是非常流行的CMS。今天我分享一个给织梦关键词自动添加链接的方法。此方法可以用来给你的网站添加内链。合理的内链可以让你的网站更易于让蜘蛛抓取到信息,更合理的分配权重,以及获得更好的客户体验。下面谈下具体的方法:首先进入织梦内容管理系统的后台管理中心。1、后台>系统>系统基本参数>核心设置>关键字替换(是/否),这里选择“是”。2、后台>系统>系统基本参数>其他选项>文档内容同一关键词替换次数(0为全部替换): 1(如果同一个关键词在同一个页面上出现多次内部链接,似乎不很好,所以这里我选择一次,也就是在文章内容第一次出现关键词的时候加链接)3、后台>采集>文档关键词维护, 在这里面设置关键词以及指向网址的链接。例如:关键词(午夜在线)链接(http://www.wuye21.com)但是这里有个问题,这个只是在添加文章时,在关键字一栏里填写的关键字才有链接(这样还是显得比较麻烦)而文章里出现的其他”文档关键字”是不会被加上链接的。怎么才能让文章中出现的关键字也自动加上链接呢?打开/include/arc.archives.class.php找到foreach($kws as $k){$k = trim($k);if($k!=”"){if($i > $maxkey){break;}$myrow = $this->dsql->GetOne(“select * from ldf_keywords where keyword=’$k’ And rpurl<>” “);if(is_array($myrow)){$karr[] = $k;$GLOBALS['replaced'][$k] = 0;$kaarr[] = “$k”;}$i++;}}把他替换成:$dsql = new DedeSql(false);$query=”select * from ldf_keywords where rpurl<>” “;$dsql->SetQuery($query);$dsql->Execute();while($row = $dsql->GetArray()){$key = trim($row['keyword']);$rul=trim($row['rpurl']);if($rul!=”")if(!in_array($key, $kw))if(!in_array($kw,$key))if(substr_count($body,$key)<10){$karr[] = $key;$kaarr[] = “$key”;}}注:1、后台>系统>系统基本参数>其他选项>文档内容同一关键词替换次数(0为全部替换): 1(视情况修改,不宜太多)2、if(substr_count($body,$key)<5) (关键词链接个数)
解决办法:第一步,定位出错的文件,即查找生成什么文件时出的问题。方法:修改 include/dedetag.class.php文件,搜索"DedeTag Engine Create File False",会找到以下代码$fp = @fopen($filename,"w") or die("DedeTag Engine Create File False");修改成$fp = @fopen($filename,"w") or die("DedeTag Engine Create File False:$filename");重新生成栏目或者文档时,即可提示当前文件信息。第二步,找到提示错误的目录或者文件,检查是否有写入权限,windows服务器请给予写入权限,linux服务器请给予777权限。如果目录或者文件不存在,请手工建立。常见的错误情况有,data目录没有写入权限,html静态文件目录没有写入权限,index.html首页静态文件没有写入权限。警告:此修改操作可能会暴露程序目录结构信息,建议解决问题以后,还原程序文件。
如果想找到织梦后台相关的源文件可以通过火狐浏览器的右击中的帧找到,很方便的。结果如下:通过这一点,我以为在别的系统中也可以(只试了shopex),然而别的系统中,火狐没有帧这个选项。
二者之间的区别:关键词关连文章是说除了tag相同认为为“相关文章”外,将”关键字相同”的文章页也认为是”相关文章”。关键字关联文章的设定:系统---系统参数---性能选项,使用关键词关连文章(是/否),选择是。关键字替换是说你网站想推广的几个关键字(词),当你在文章里面出现这些词的时候,发布文章后,这些词不用你手动添加链接,系统就会自动给它们添加设定好的链接。关键字替换的详细信息,请看:http://www.cnblogs.com/fengzheng126/archive/2012/04/26/2471234.html
声明:本文转载自:http://down.chinaz.com/try/201110/1306_1.htm本文是关于织梦DedeCMS调用多级子栏目的,拿来测试分享下。DEDECMS v5.7,后台已建栏目目录,如下图1所示:图1 DEDECMS后台栏目结构现在,我们先来调用顶级栏目"站长新闻",以及其下的子栏目,如图2所示:图2 DEDECMS顶级栏目"站长新闻"当前栏目typeid值为3,所以代码如下:{dede:channelartlist typeid='3,3'}<a href="{dede:field name='typeurl'/}">{dede:field name='typename'/}</a><hr><!-- 这里我们加一个横线,已区分顶级栏目、子栏目,此处为注释文字,可以删除-->{dede:channel type='son' noself='yes'}<a href="[field:typelink/]">[field:typename/]</a><br />{/dede:channel}{/dede:channelartlist}效果图如下:图3 DEDECMS调用栏目效果我们再来调用二级栏目"互联传闻",以及其下的子栏目,栏目结构如图4:图4 DEDECMS顶级栏目互联新闻其栏目typeid值为5,所以代码如下:{dede:channelartlist typeid='5,5'}<a href="{dede:field name='typeurl'/}">{dede:field name='typename'/}</a><hr><!-- 这里我们加一个横线,已区分顶级栏目、子栏目 -->{dede:channel type='son' noself='yes'}<a href="[field:typelink/]">[field:typename/]</a><br />{/dede:channel}{/dede:channelartlist}效果图如下:图5 DEDECMS调用新闻效果接下来,我们来调用两个栏目(站长新闻、互联新闻),以及他们各自的子栏目,他们对应typeid为3和5,所以代码如下:{dede:channelartlist typeid='3,5'}<a href="{dede:field name='typeurl'/}"><b>{dede:field name='typename'/}</b></a>(上一级栏目)<br>{dede:channel type='son' noself='yes'}<a href="[field:typelink/]">[field:typename/]</a><br />{/dede:channel}<hr><!-- 这里我们加一个横线,区分2个不同栏目的调用效果 -->{/dede:channelartlist}效果图如下:
{dede:arclist row=8 titlelen=32 addfields='time' channelid='18′}<li><span><input type="hidden" id="gettime" value="[field:time function='strftime("%b %d %Y %H:%M:%S",@me)'/]" /><input type="hidden" id="gettitle" value="[field:title/]" /><script>function Clock(){var Today=new Date();//var PPQday=new Date(2012,9-1,28); //你想倒计时的结束日期var PPQday=new Date(document.getElementById('gettime').value); //你想倒计时的结束日期var DayTime = (PPQday.getTime()-Today.getTime())/ 1000 / 60 / 60 /24;var days = parseInt(DayTime);//天var HourTime =(DayTime - days)*24;var hours =parseInt(HourTime);//时var MinutesTime =(HourTime-hours)*60;var minutes = parseInt(MinutesTime);//分var SecondTime =(MinutesTime-minutes)*60;var seconds = parseInt(SecondTime); //秒document.getElementById("PPQTime").innerHTML= "距"+document.getElementById("gettitle").value+"倒计时 "+ days + "天";//+ ForMat(hours)+"小时"+ForMat(minutes)+"分"+ForMat(seconds)+"秒";setTimeout(Clock,1000);}function ForMat(data){if(data<10)return "0"+data;elsereturn data;}</script><div id="PPQTime"></div></span></li>{/dede:arclist}
模板代码如下:<ul>{dede:arclist titlelen=’50′ row=’10′}<li><a title=”[field:title /]” href=”[field:filename /]”>[field:title function=’ ( strlen(”@me”)>30 ? cn_substr(”@me”,30).”…” : “@me” ) ‘ /]</a></li>{/dede:arclist}</ul>本文详细地址:http://www.xjltnet.com/wendang/2011/0924/8.html
基本语法:{dede:autochannel partsort='' typeid=’’}{/dede:autochannel}参数说明:partsort = '0' 栏目所在的排序位置typeid=’0’ 获取单个栏目的顶级栏目底层模板字段:typename,typelink(仅表示栏目的网址)获取当前频道的下级栏目的内容列表标签适用范围:全局使用基本语法:{dede:channelartlist row=6}<dl><dt><a href='{dede:field name='typeurl'/}'>{dede:field name='typename'/}</a></dt><dd>{dede:arclist titlelen='42' row='10'} <ul class='autod'><li><a href="[field:arcurl /]">[field:title /]</a></li><li>([field:pubdate function="MyDate('m-d',@me)"/])</li></ul>{/dede:arclist}</dl>{/dede:channelartlist}参数说明:typeid = '0' 频道ID,多个请用","分隔row = '20' 获取的栏目返回值其他说明:除了宏标记外,channelArtlist 是唯一一个可以直接嵌套其它标记的标记,不过仅限于嵌套{dede:type}{/dede:type} 和 {dede:arclist}{/dede:arclist} 两个标记。底层模板变量:包含{dede:type}{/dede:type}及{dede:arclist}{/dede:arclist}下面所有底层模板变量特殊应用<div class='news' id='{dede:field name='id'}'></div>{dede:field name='id'} 获取该栏目的 子栏目的ID 即 typeid
个性的dede,在制作多级菜单的时候很无奈,当时以为在保证尽量不动源码的情况下,很难完成二级导航的功能,没想到channelArtlist这个函数,这唯一能嵌套的函数。太爽了。用着例子1:读取指定菜单项123{dede:channelArtlist typeid='2,3,4,5,6'}<li ><a href='{dede:field name='typeurl'/}' {dede:field name='rel'/} class="{dede:field name='id' function="menu_selectd(@me , 'heard_selecd' )"/}" >{dede:field name='typename'/}</a></li>{/dede:channelArtlist}例子2: 读取二级菜单(在这里发现个很郁闷的bug dede读取子菜单竟然是用sun 和son都行。 不知道是那个程序员写错还是故意的。)12345678910{dede:channelArtlist typeid='11,16,19,22,23,25,26,36'}<li id="{dede:field name='id' function="menu_selectd(@me , 'slt' )"/}" ><a href="{dede:field name='typeurl'/}" {dede:field name='id' function="menu_selectd(@me , 'color:#FFF;' )"/}" id='menu_a'>{dede:field name='typename'/}</a><ul visibility: hidden;">{dede:channel type='sun'}<li><a href="[field:typelink/]">[field:typename/]</a></li>{/dede:channel}</ul></li>{/dede:channelArtlist}例子3:读取指定菜单项下几条内容。12345678910111213{dede:channelArtlist typeid="3" col="1"}<li>{dede:type}<a href="javascript:void(0)" onclick="show('pro_[field:id/]')"><b>[field:typename/] </b></a></li><ul id='pro_[field:id/]' class="pro_all" display:none;">{/dede:type}{dede:arclist row="5"}<li><a href="[field:arcurl/]">[field:textlink/]</a></li>{/dede:arclist}</ul>{/dede:channelArtlist}
1、时间格式{dede:field name=’pubdate’ function=’strftime(“%Y年%m月%d日 %H:%M:%S”,”@me”)’ /}2007年1月1日 18:30:02{dede:field name=’pubdate’ function=’strftime(“%Y-%m-%d %H:%M:%S”,”@me”)’ /}2007-1-1 18:30:02{dede:field name=’pubdate’ function=’strftime(“%Y年%m月%d日 %H时%M分%S秒“,”@me”)’ /}2007年1月1日 18时30分02秒{dede:field name=’pubdate’ function=’strftime(“%m-%d %H:%M:%S”,”@me”)’ /}1-1 18:30:02{dede:field name=’pubdate’ function=’strftime(“%m-%d”,”@me”)’ /}1-1%Y-年%m-月%d-日%H-小时%M-分%S-秒2、24小时内的时间显示红色..[field:pubdate runphp='yes']$a=”<font color=’#ff0000′>”;$b=”</font>”;$c=strftime(“%Y年%m月%d日 %H:%M:%S”,”@me”);$ntime = time();$oneday = 3600 * 24;if(($ntime – @me)<$oneday) @me = $a.$c.$b;else @me =$c;[/field:pubdate]3、最后更新时间最后更新时间:{dede:tagname runphp=’yes’}@me = date(“Y-m-d H:i:s”, time());{/dede:tagname}4、XX天前[field:pubdate runphp='yes']$today = Floor(time()/(3600 * 24));$senday= Floor(@me/(3600 * 24));$updays = $today-$senday;if($updays==0) @me = “今日”;else @me = $updays.”天前”;[/field:pubdate]