1.无法在这个位置找到: {dede:include filename="
织梦模板include插入非模板目录文件出现“无法在这个位置找到”错误的解决办法
以下是dede V55_UTF8
查dede include标签手册
(3) include引入一个文件,形式为:
{dede:include file='文件名称' ismake='是否为dede板块模板(yes/no)'/}
对文件的搜索路径为顺序为:绝对路径、include文件夹,CMS安装目录,CMS主模板目录其实根本不是这个样子的,如果你要引用一个其它目录的东西如:
{dede:include filename="/haixiait/template/default/inc_head.htm"/}
那么就会返回为空字符串,很显然,并没有对文件进行引用.下面经过改造就可以引用各个目录的文件了.(很简单,下面加粗蓝色字体为修改部分)
文件目录为:dede安装根目录/include/dedetag.class.php
//引入文件
function IncludeFile($filename,$ismake='no')
{
global $cfg_df_style;
$restr = '';
if($filename=='')
{
return '';
}
if( file_exists(DEDEROOT."/templets/".$filename) )
{
$okfile = DEDEROOT."/templets/".$filename;
}
else if(file_exists(DEDEROOT.'/templets/'.$cfg_df_style.'/'.$filename) )
{
$okfile = DEDEROOT.'/templets/'.$cfg_df_style.'/'.$filename;
}
else if(file_exists(DEDEROOT.$filename) )
{
$okfile = DEDEROOT.$filename;
}
else
{
return "无法在这个位置找到: $filename";
}
//编译
if($ismake!="no")
{
require_once(DEDEINC."/channelunit.func.php");
$dtp = new DedeTagParse();
$dtp->LoadTemplet($okfile);
MakeOneTag($dtp,$this->refObj);
$restr = $dtp->GetResult();
}
else
{
$fp = @fopen($okfile,"r");
while($line=fgets($fp,1024)) $restr.=$line;
fclose($fp);
}
return $restr;
}
2.图片以及其他文件样式、js导入路径标签
{dede:global.cfg_cmspath/} 是dedecms 的安装目录,一般就是网站的根目录。{dede:global.cfg_templets_skin/} 网站模板的路径或者说模板目录。
{dede:global.cfg_cmsurl/}是当前目录
注意加一根斜线{dede:global.cfg_cmsurl/}/是根目录
[field:typeid/] 返回文章id
[field:sortrank/] 返回一个数不知道什么意思
[field:flag/] 返回文章属性(字母)
[field:ismake/]
[field:channel/] 返回频道(模型)id
[field:arcrank/]
[field:click/] 返回文章点击量
[field:money/]
[field:title/] 返回文章标题
[field:shorttitle/] 返回文章短标题
[field:color/] 返回文章标题设置的颜色代码如:#FFFF00
[field:writer/] 返回文章作者
[field:source/] 返回文章来源
[field:litpic/] 返回文章缩略图地址
[field:pubdate/]
[field:senddate/]
[field:mid/]
[field:lastpost/]
[field:scores/]
[field:goodpost/]
[field:badpost/]
[field:notpost/]
[field:description/] 返回文章摘要/简介[field:info/]
[field:filename/] 返回文章html文件地址
[field:image/] 返回缩略图=
[field:fulltitle/] 返回完整标题https://www.doczj.com/doc/8011305512.html,/yanli_xu/article/details/7610585 [field:textlink/] = [field:title/]([field:arcurl/]文章地址)[field:typelink/] = [field:typename]
[field:plusurl/] 返回插件路径
[field:memberurl/] 返回会员路径
[field:templeturl/] 返回模板路径
[field:stime/] 返回文章发表时间格式:2012-02-02
[field:pubdate function="MyDate('Y-m-d H:i:s',@me)"/] 更新时间2012-01-01 08:10:11
标签如下:
{dede:type}
{/dede:type}
因为{dede:field name='arcurl'/} 这个获取当前页面路径的标签只能在内容页使用,栏目页没有效果的。所以在栏目页想获取当前栏目的路径及名称的话,就要用上面这个标签。
而获取网站所有栏目名称及路径列表的话,就要用到另一个标签:{dede:channel},调用方式如下:
{dede:channel type='top' row='11'}
{/dede:channel}
3.dede取子栏目时重复显示同级栏目的终极解决方法:
使用channelartlist标签时,当栏目没有子栏目是,会出现重复同级栏目的问题,解决方法如下:
先看下面的代码
{dede:channelartlist typeid='2'}
{dede:type}
{/dede:type}
{dede:channel type='son' noself='yes'}(这个属性是eims当中的在include/taglib/下面的channel.lib.php文件当中)
{/dede:channel}
{/dede:channelartlist}
此代码运行结果可以看到如果存在子类那么能够取出子类栏目这是因为为channel标签添加了noself='yes'的属性(这个属性是eims当中的在include/taglib/下面的channel.lib.php 文件当中)
解决方法:
如果是dedecms5.6/5.7则需要做以下修改还是打开那个channel.lib.php文件找到
找到
if($type=='son' && $reid!=0 && $totalRow==0)
改成
if($type=='son' && $reid!=0 && $totalRow==0 && $noself=='')
至此,方法解决。
织梦调用导航菜单栏目,随着javascript的运用,导航栏的子栏目越来越多,在dedecms如何实现这些栏目的调用呢?
1. 一般导航栏目的调用,该类栏目只有主栏目,没有子栏目,这类栏目一般适用于企业网站和个人网站。其样式图如下:
该类栏目的dedecms调用方法比较简单,如下:
{dede:channel type='top' currentstyle="
注释(参数):typeid='0' 栏目ID; reid = '0' 上级栏目ID; row = '100' 调用栏目数;col = '1' 分多少列显示(默认为单列);type = 'son | sun' son表示下级栏目,self表示同级栏目,top顶级栏目; currentstyle = '' 应用样式"。
这种方法会把后台的顶级栏目都调用出来,如果想有些栏目不被调用出来,可以加上参数typeid=‘所要调用栏目的id’。对于调用指定的栏目可以用下面的标签:
{dede:type typeid=‘指定栏目的id’}[field:typename /]{/dede:type}
2. 带有二级子栏目的栏目的调用,这类网站用于信息分类比较多的网站,其样式图如下:
这种栏目是比较常见的,其dedecms调用代码如下:
{dede:channelartlist typeid='1,2,3,6,7,10,8,11' row='10'} //typeid=‘顶级栏目的id’
对于没有子栏目的顶级栏目可以使用调用指定栏目的标签:
{dede:type typeid=‘指定栏目的id’}
这样可以实现上述栏目的调用。
3.有三级子栏目的调用代码,这类导航适用于商城等,其样式图如下:
对于这种栏目的调用代码如下:
{dede:typetypeid='2'}
//顶级栏目的调用
这三类基本上包括了导航栏的调用方式,而且都经过测试可以放心使用。
织梦cms获取当前栏目路径及栏目名称的标签调用及顶级栏目
标签如下:
当前:
{dede:type}
{/dede:type}
因为{dede:field name='arcurl'/} 这个获取当前页面路径的标签只能在内容页使用,栏目页没有效果的。所以在栏目页想获取当前栏目的路径及名称的话,就要用上面这个标签。
而获取网站所有栏目名称及路径列表的话,就要用到另一个标签:{dede:channel},调用方式如下:
所有栏目
{dede:channel type='top' row='11'}
{/dede:channel}
织梦dedeCMS网站栏目页获取当前栏目的顶级栏目名称的标签教程:
我们在做一些网站的时候,时常会碰到需要调用当前栏目的顶级栏目名称的时候,织梦默认{dede:field name='typename' /} 可以获取当前栏目页上一级栏目的名称,而不是当前栏目顶级栏目名称。
下面拓展出一个方法来实现这个效果、:
在include/common.func.php的最下方加入:
内容来自
顶级栏目名
function GetTopTypename($id)
{
global $dsql;
$row = $dsql->GetOne("SELECT typename,topid FROM jiemou_arctype WHERE id= $id");
if ($row['topid'] == '0')
{
return $row['typename'];
}
else
{
$row1 = $dsql->GetOne("SELECT typename FROM jiemou_arctype WHERE id= $row[topid]");
return $row1['typename'];
}
}
在文章页或者栏目列表页调用时,在所要调用栏目名称的位置加上下面这行代码即可实现。内容来自
{dede:field name='typeid' function="GetTopTypename(@me)" /} 内容来自
在文章页中用下面这个方法来调用
获取当前栏目的父栏目
写成一个函数放入include/extend.func.php文件中
function GetParentCategoryNameByID($CurrentID){
$tsql = new DedeSql(false);
$typelink2 = '';
$tsql->SetQuery("Select i.typedir,i.typename From zz5unet_arctype t left join zz5unet_arctype i on i.id=t.reid where t.id='$CurrentID'");
$tsql->Execute('t');
while($row = $tsql->GetArray('t',MYSQL_ASSOC))
{
$typelink2 .= $row['typename'];
}
return $typelink2;
}
调用方法:{dede:field name='id' function='GetParentCategoryNameByID(@me)' /}
调用redirecturl
在后台设置了跳转,但是发现好像不能用。最后终于解决了这个问题。
这个要用到附加表,redirecturl这个字段在主表和附加表都有,但是不调用附加表是显示不
出来的。
{dede:arclist row='13' typeid='20' flag='j,p' orderby='pubdate' }
{/dede:arclist}
所以,添加了一段代码就可以了。呵呵。
{dede:arclist row='13' typeid='20' flag='j,p' orderby='pubdate' addfields='redirecturl' channelid='1'}
{/dede:arclist}
解决织梦在页面模板里直接使用跳转链接redirecturl而不是织梦链接arcurl的解决办法
很简单,获取到文章id,然后做一次数据库查询,查出dede_addonarticle表里的redirecturl 字段即可
包含在循环里的写法,例如dede:list中
[field:id runphp='yes']
$aid = @me; $row = $GLOBALS['dsql']->GetOne("Select redirecturl From kumi_guides where aid='$aid'");
@me = $row['redirecturl'];
[/field:id]
最终页:
{dede:field.id runphp='yes'}
$aid = @me; $row = $GLOBALS['dsql']->GetOne("Select redirecturl From kumi_guides where aid='$aid'");
@me = $row['redirecturl'];
{/dede:field.id}
Dedecms channel 标签指定typeid时 currentstyle无效的修复办法Dedecms channel 标签指定typeid时 currentstyle无效的修复办法
1 2 3 {dede:channel type='son' row='8' currentstyle="
{/dede:channel}
这种调用方式currentstyle有效但是:
1 2 3 {dede:channel type='son' row='8' typeid=1 currentstyle="
{/dede:channel}
这种调用方式currentstyle就无效了
论坛里有人说用把typeid=xxx改成channelid=1,简直是无稽之谈。完美解决办法:
修改include/taglib/channel.lib.php
1 if( ($row['id']==$typeid|| ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' )
改成
1 if(($row['id']==$refObj->TypeLink->TypeInfos['id'] || ($topid==$row['id'] && $type=='top')) && $currentstyle!='')
*织梦DedeCMS列表页调用文章正文方法
在制作织梦模板的时候,有的站长需要调用文章部分内容,用[field:description/]标签字数不够多,另外修改了文章内容但是摘要还需要手动修改,所以只能调用文章正文部分的内容了。实现织梦DedeCMS列表页调用文章正文的方法有两种,不过都是使用的dede:arclist 标签,如果使用dede:list标签的话,第一种方法是调用不出结果的。
以下是织梦DedeCMS列表页调用文章正文的第一种方法:
{dede:arclist flag='h' row='10′}
[field:id runphp='yes'] $aid = @me; $row = $GLOBALS['dsql']->GetOne("Select body From 'dede_addonarticle' where aid='$aid' "); @me =
cn_substr(strip_tags("{$row['body']}"),400);[/field:id]【阅读详细】
{/dede:arclist}代码中的数字400是用来设置需要调用多少内容的,因为调用的是body里面的内容,如果
有里面包含代码的话也会被调用出来,这点比较不好,不过可以使用html2tex()函数解决一下。
第二种方法则是利用了织梦可以自定义模型内容数据,并调用的原理,把文章模板的body 字段看做在自定义的。调用的代码如下
{dede:arclist row='10' addfields='body' channelid='1'}
[field:body function='cn_substr(html2text(@me),600)'/]...
{/dede:arclist} 以下是这种方法的详细说明:1.addrields=”字段一,字段二…”
2.idlist:文章编号,调用指定内容
3.function=’cn_substr(html2text(@me),600)’将文章内容转化为文字格式
4.channelid,模型编号,文章默认为1,查看位置:后台–核心–内容模型管理
两种方法各有优劣,第一种方法比较繁琐,不是那么容易看懂。还是比较推荐采用第二种方法实现织梦DedeCMS列表页调用文章正文的功能的。
/*dede:list 标签中调用文章全部内容*/
谁说dede:list 标签不能调用body内容,现在就告诉你,直接就可以调用
第一步,打开后台核心-->频道模型-->内容模型管理-->普通文章,
在列表附加字段中添加body
第二步,在dede:list语句中指定addfields='body',然后直接用[field:body/]调用全部内容。
例:
{dede:list pagesize='18' addfields='body'}
[field:body/]
{/dede:list}
另外,如果像摘要一样调用可以用
[field:body function='cn_substr(html2text(@me),200)'/]替代:[field:description /],
调出文章前200个字符内容。
经过这两步,可以彻底关掉系统默认的文章摘要功能。
获取当前栏目的上级父栏目名称方法:
{dede:field.typeid runphp='yes'"}
global $dsql ;
$reid = $dsql->GetOne("SELECT reid FROM dede_arctype where id=@me");
$reid = $reid['reid'];
$typename = $dsql->GetOne("SELECT typename FROM dede_arctype where id=$reid"); @me=$typename['typename'];
{/dede:field.typeid}
获取当前栏目的上级父栏目链接跳转方法:
{dede:field.typeid runphp='yes'}
global $dsql ;
$reid = $dsql->GetOne("SELECT reid FROM dede_arctype where id=@me");
$reid = $reid['reid'];
$typename = $dsql->GetOne("SELECT typedir FROM dede_arctype where id=$reid");
@me=str_replace('{cmspath}/iamset_cn','',$typename['typedir']);
{/dede:field.typeid}/
{dede:field.typeid runphp='yes'}
global $dsql ;
$reid = $dsql->GetOne("SELECT reid FROM dede_arctype where id=@me");
$reid = $reid['reid'];
$typename = $dsql->GetOne("SELECT defaultname FROM dede_arctype where id=$reid"); @me=$typename['defaultname'];
{/dede:field.typeid}
调用当前栏目名称及连接:
一、
{dede:type}
{/dede:type}
二、
{dede:field name='typename' function=”GetTypeName(@me)”/}
织梦dede5.7版本如何调用上级栏目的名称和链接:首先找到include/taglib/channel.lib.php文件,找到59行,代码如下:
--------------------------------------------
else if($type=='self')
{
if($reid==0) return '';
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM `#@__arctype` WHERE reid='$reid' And ishidden<>1 order by sortrank asc limit 0, $line ";
}
在此段代码之后,添加:
else if($type=='parent')
{ //新增代码获得上级栏目
if($reid==0) return '';
$sql = "SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath
FROM `#@__arctype` WHERE id='$reid' And ishidden<>1 order by sortrank asc limit 0, $line ";
}
接下来继续往后找到代码:
//处理同级栏目中,当前栏目的样式
if( ($row['id']==$typeid || ($topid==$row['id'] && $type=='top') ) && $currentstyle!='' )
修改为:
//处理同级栏目中,当前栏目的样式
if( ($row['id']==$typeid || ($topid==$row['id'] && $type=='top') || ($row['id']==$reid &&
$type=='parent' )) && $currentstyle!='' )
前台调用方法:
{dede:channel type='parent'}{/dede:channel}
在使用dedecms5.6时发现如果在内容页面调用相关文章,简单的使用dedecms arclist不能够实现,但是arclist有一个字段keyword,如果把当前文章的keyword调用出来,就能够得到当前相关文章的列表.我的做法是对keyword附一个固定的值复制代码
{dede:arclist keyword='relation' row='5'}
{/dede:arclist}
如果是在终端页面调用相关文章,就将keyword的值固定,其他的参数也都是可以用的,默认的keyword值是当前页面得关键字,有兴趣的可以去我网站看看游戏联盟114 可以对比下面相关文章的关键字和当前页面得关键字
具体的实现方式是:
1.修改include/arc.archives.class.php找到MakeOneTag($this->dtp, $this, 'N',$reltag);将其替换为复制代码
$reltag = explode(',',$this->Fields['keywords']);
$reltag = $reltag[0];
MakeOneTag($this->dtp, $this, 'N',$reltag);
2.修改include/下的channelunit.func.php找到函数MakeOneTag函数MakeOneTag(&$dtp, &$refObj, $parfield='Y')在函数的最后加上一个参数复制代码
MakeOneTag(&$dtp, &$refObj, $parfield='Y',$reltag)
仔细看下有什么区别吧
在函数中找到复制代码
if(in_array($tagname,$alltags))
{
$filename = DEDEINC.'/taglib/'.$tagname.'.lib.php'; include_once($filename);
$funcname = 'lib_'.$tagname;
$dtp->Assign($tagid,$funcname($ctag,$refObj));
}
将其修改为复制代码
if(in_array($tagname,$alltags))
{
$filename = DEDEINC.'/taglib/'.$tagname.'.lib.php'; include_once($filename);
$funcname = 'lib_'.$tagname;
if($tagname == 'arclist'){
foreach($ctag->CAttribute->Items as $key => $val){ if($key == 'keyword'){
if($val=='Relation'){
$ctag->CAttribute->Items[$key]=$reltag;
}
}
}
}
$dtp->Assign($tagid,$funcname($ctag,$refObj));
}
呵呵,去生成静态吧,不要忘记了keyword='relation' relation 不要变哦,变了可就调不出来了,有问题就问吧
关于织梦模板类型只支持.htm文件类型的扩展修改:
找到文件include/arc.archives.class.php
将if (!preg_match("#.htm$#", $tmpfile)) return FALSE; 更改为:
if (!preg_match("#.htm$#", $tmpfile) && !preg_match("#.html$#", $tmpfile)) return FALSE;
关于织梦相关文章调用的问题:
https://www.doczj.com/doc/8011305512.html,/cms/72229.html
DEDE5.7如何实现网址直接跳转
可以用判断来实现,当跳转地址存在,即么直接读取redirecturl (跳转地址字段),不存在则读取arcurl
标签如下:
{dede:arclist row='1' titlelen='30' addfields='redirecturl' channelid='1'}
[field:title/] {/dede:arclist}
第二:如何让织梦的list标签支持redirecturl属性,实现文章直接调用跳转网址
现在dedecms的LIST标签不支持redirecturl 网站很多采用的是直接跳转的地址,那么如何如何让织梦的list标签支持redirecturl属性,实现文章直接调用跳转网址呢?
修改方法
很简单只要在$addField后加上我们要查询的附加表字段的名称就好
打开include/arc.listview.class.php 找到
//如果不用默认的sortrank或id排序,使用联合查询(数据量大时非常缓慢)if(preg_match(’/hot|click|lastpost/’, $orderby))
{
$query = "SELECT arc.*,tp.typedir,tp.typename,tp.isdefault,tp.defaultname,
https://www.doczj.com/doc/8011305512.html,rule,https://www.doczj.com/doc/8011305512.html,rule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath
$addField
FROM `#@__archives` arc
LEFT JOIN `#@__arctype` tp ON arc.typeid=tp.id
$addJoin
WHERE {$this->addSql} $ordersql LIMIT $limitstart,$row";
}
在这个的上面添加一行
$addField .= ’,’.$addtable.’.redirecturl’;
示例代码如下:
{dede:list row=’1’ addfields=’redirecturl’ orderby=’pubdate’}
{/dede:list}
也可以根据redirecturl是否为空,实现直接跳转还是跳转到站内, 示例代码如下:{dede:list row=’1’ addfields=’redirecturl’ orderby=’pubdate’}
{/dede:list}
dedecms 将数字日期用英文字母表示
最近看到一DEDECMS做的网站,在月份表现形式上有点不同,其中月份是以英文来表示,如下图中的5月份,是用MAR表示。刚开始以为是要通过改DEDE底层的PHP代码来实
现,后来才知道DEDE本身带的[field:pubdate function="MyDate('m-d',@me)"/]就可实现,不过是用另一种方式来写。如下:
[field:pubdate function='strftime("%b %d, %Y",@me)'/]Nov 01,2008
[field:pubdate function='strftime("%A on %b %d, %Y, %X : %Z",@me)'/]Saturday on Nov 01,2008,11:21:06:中国标准时间
这其中用到了strftime转换标签,通过这个就可以将月份或星期用英文表示出来。有了这个,大家以后可就不用再发愁了。
下面看看dede时间标签组成的表现方式:
dede时间标签的组成:
[field:pubdate function="MyDate('m-d',@me)"/]
首先是声明field:pubdate就是说这是底层模板的发布时间标签,而后边的函数代表的就是时间格式的重新格式化。
字母大小写的不同,所显示的月份年份等也会不同。
a 星期几的缩写。
A 星期几的全名。
b 月份名称的缩写。
B 月份名称的全名。
c 本地端日期时间较佳表示字符串。
d 用数字表示本月的第几天(范围为00 至31)。
H 用24 小时制数字表示小时数(范围为00 至23)。
I 用12 小时制数字表示小时数(范围为01 至12)。
j 以数字表示当年度的第几天(范围为001 至366)。
m 月份的数字(范围由1 至12)。
M 分钟。
p 以'AM' 或'PM' 表示本地端时间。
S 秒数。
U 数字表示为本年度的第几周,第一个星期由第一个周日开始。W 数字表示为本年度的第几周,第一个星期由第一个周一开始。w 用数字表示本周的第几天( 0 为周日)。
x 不含时间的日期表示法。
X 不含日期的时间表示法。
y 二位数字表示年份(范围由00 至99)。
Y 完整的年份数字表示,即四位数。
Z 时区或名称缩写。
织梦Dedecms文章页、栏目页获取当前页面顶级栏目名称
的方法
时间:2013-09-18 来源:互联网作者:忘忧草v5 阅读:1246次
用织梦做一些网站项目时,栏目级别比较多,时常会碰到需要在当前内容页、列表页面调用顶级栏目名称的时候,织梦默认{dede:field name='typename' /} 可以获取当前栏目页上一级栏目的名称,而不是当前栏目顶级栏目名称。
下面的方法来就可以实现调用最顶级的栏目名称:
1、打开include/common.func.php文件
2、在最下方粘贴如下代码:
//获取顶级栏目名
function GetTopTypename($id)
{
global $dsql;
$row = $dsql->GetOne("SELECT typename,topid FROM dede_arctype WHERE id= $id");
if ($row['topid'] == '0')
{
return $row['typename'];
}
else
{
$row1 = $dsql->GetOne("SELECT typename FROM dede_arctype WHERE id= $row[topid]");
return $row1['typename'];
}
}
3、在文章内容页、栏目列表页调用时,使用下面这行代码即可实现
{dede:field name='typeid' function="GetTopTypename(@me)" /}
dede使用channelartlist reid属性调用同级栏目
dede标签调用大全 * 关键描述调用标签: * 模板路径调用标签:{dede:field name='templeturl'/} * 网站标题调用标签:{dede:global name='cfg_webname'/} * 栏目导航调用标签:首页 {dede:channel type='top' row='8' currentstyle="
织梦标签调用大全 网站名称:{dede:global.cfg_webname/} 网站根网址:{dede:global.cfg_basehost/} 网站根目录:{dede:global.cfg_cmsurl/} 网页主页链接:{dede:global.cfg_indexurl/} 网站描述:{dede:global.cfg_description/} 网站关键字:{dede:global.cfg_keywords/} 模板路径:{dede:global.cfg_templets_skin/} 调用页面:{dede:include filename="head.htm"/} 网站编码:{dede:global.cfg_soft_lang/} ----------------------------------------------------------------------------------------------- 调用日期:[field:pubdate function=MyDate('y-m-d',@me)/] 调用时间2:[field:pubdate function="GetDateTimeMK(@me)"/] 调用缩略图: {dede:arclist row=10 orderby=pubdate type='image.' imgwidth='定义图片宽度' img height='高度'} [field:image/] {/dede:arclist} 调用缩略图原图: [field:litpic runphp='yes'] $youjoys = array("-lp", "_lit"); @me = str_replace ($youjoys, "", @me); [/field:litpic] 调用单个栏目: {dede:type}
网站后台使用说明书 后台是整个网站的管理工具。其功能包括:频道管理、内容发布、内容维护、HTML更新、核心模块、扩展模块、辅助插件、系统管理等功能。 左侧菜单栏 (后台界面一览) 以下是各版块的功能说明: 频道管理 内容模型管理 指发表文档的类别,例如:普通文章,图片集,软件,FLASH,产品,专题,分类信息。 功能:编辑,删除,复制和修改模板。 网站栏目管理 管理网站所有栏目。
功能:创建顶级栏目,预览栏目页面,查看栏目文档,添加子栏目,修改栏目设置,移动栏目,删除栏目,更新排序,获取js,更新栏目HTML,更新文档HTML。 自由列表管理 可以用来生成GOOGLE地图、百度地图等,利于搜索引擎收录。 功能:增加,更改,更新,删除,搜索列表 单独页面管理 单独页面,不属于网站栏目的页面,可以选择用模板或不用模板。 功能:增加,更改,更新,删除页面。 互动模块设置 行业管理 用于企业会员——公司资料——主营行业中的内容;在个人会员发布分类信息时用到。 功能:添加主行业,子行业,编辑,删除行业。 地区管理 用于网站中需要添加地区的地方。如:企业会员——企业资料。 功能:添加一级地区,二级地区,编辑,删除地区。 小分类管理 相关于栏目的属性,在添加或修改栏目时启用小分类(仅适用于分类信息等互动模型) 频道设置 文档自定义属性管理 使用自定义属性之后,只要给arclist 标记加上 att='ID' 的属性,然后在发布的时候对适合的文档选择专门的属性,那么使用arclist的地方就会按你的意愿显示指定的文档。功能:滚动显示,头条推荐,幻灯片显示,首页推荐,首页滚动。 软件频道设置 关于软件下载频道的一些设置。 功能:链接的显示方式,附件下载方式,是否启用镜像站点,是否显示本地下载链接
爱雅逸整理 https://www.doczj.com/doc/8011305512.html,
DEDECMS 专题详解
DEDECMS 专题详解
一个网站通常会在不同时期推出一些针对性的专题内容,专题的功能其实就是将站点的内容根据特 定的需求进行一次检索,将这些不同形式的内容进行一次整合,这个我们可以看看一些大的门户网 站,例如新浪、搜狐,他们有自己的专题频道。一个专题可以包含几个不同栏目的内容或者包含不 同内容模型如:文章、图片、音频、视频等,不同的专题需要有自己符合当时环境的页面风格,比 如在元旦、新年就需要红色主题的专题模板,在春天、夏天就需要绿色主题的专题模板等。一个好 的专题容易让网站会员更全面的了解相关信息,以增强对网站的关注度,下面我们介绍如何使用 DedeCMS 的专题功能来制作一个专题。 我们以超级管理员身份登陆后台,在系统的[核心]-[专题管理]中对专题进行管理。
因为这里的常用管理同文档管理类似,一些常用操作如添加、删除、更新、推荐这些操作在这里不 做冗述,本教程主要介绍如何通过专题结合模板文件制作出自己的专题页面。 制作一个专题页面,需要准备 2 样东西:内容、模板,当然如果你没有自己设计的模板文件,系统 默认是自带了一套专题页的风格的,可以在后台[核心]-[内容模型管理],点击专题类型的模板 会查看到以下内容:
文档模板:/templets/default/article_spec.htm [修改] 列表模板:/templets/default/list_spec.htm [修改] 频道封面模板:/templets/default/index_spec.htm [修改]
这几个默认模板文件用户可以自己进行全局统一修改,但一般情况下都是在添加专题时在常规参数 的“专题模板”中进行指定。 当然有一些专题也不必用到已经发布在内容管理系统中的内容,这种专题直接可以用静态页面就可 以完成,不需要标签进行调用,但又希望在专题列表中显示出来,为了解决这个问题,建议用户在 制作专题页时候把专题页面做成一个不含标记的模板文件,在添加专题时候指定模板即可。 接下来我们介绍下织梦的专题功能是如何划分的。 我们以 chinaz 两个专题页面为例: DedeCms V5.3 经典解析与揭秘(https://www.doczj.com/doc/8011305512.html,/zt/dedecms/)
第 1 页共 6 页
织梦时间调用标签大全 大家好,今天给大家讲解下织梦教程的织梦时间调用标签大全。 好了,下面我们开始讲解织梦时间调用的标签大全,对大家有很大帮助,大家一定仔细看。好了下面还是仔细看吧,如果大家感觉好的话,就收藏吧。 织梦首页时间标签 1,11-20 样式 1.([field:pubdate function='strftime("%m-%d",@me)'/]) 2,May 15, 2009 样式 1.([field:pubdate function='strftime("%b %d, %Y",@me)'/]) 织梦列表页时间标签 1,2009-12-27 18:30:02 样式 1.[field:pubdate function="GetDateTimeMK(@me)"/] 2,2009-12-27 样式 1.[field:pubdate function="GetDateMK(@me)"/] 织梦内容页时间标签 1、2009-12-27 样式 1.{dede:field name='pubdate'function='GetDateMk(@me)'/} 2、May 15, 2009 样式 1.{dede:field name='pubdate'function='strftime("%b %d, %Y",@me)'/} 24小时内的时间显示红色: 1.[field:pubdate runphp='yes'] 2.$a=""; 3. $b=""; $c=strftime("%Y年%m月%d日 %H:%M:%S","@me");
1.标签名称:channel 标记简介:织梦常用标记,通常用于网站顶部以获取站点栏目信息,方便网站会员分类浏览整站信息 功能说明:用于获取栏目列表 适用范围:全局使用 基本语法:{dede:channel type='top' row='8' currentstyle="
1、
[field:description/]...
DEDECMS二次开发时需要收藏的模板标签: 需求: 1. 模板路径、include路径标签、plus路径标签还有就是
内的SEO标题等相关标签; 2.系统自带的首页、列表页、内容页等常用的标签,如时间、作者、分页、顶踩等等; 3.更深入的二次开发需要的模板调用标签,通过sql语句来实现数据的调用; 4.一些链接、图片、标题等标签的灵活使用; 路径、SEO标题、模板基本信息标签: 1. 模板路径调用标签: {dede:field name='templeturl'/} 2. 关键描述调用标签: 3. 网站标题调用标签: {dede:global name='cfg_webname'/} 4. 指定调用栏目标签: {dede:type typeid='ID'}[field:typename /]{/dede:type} 5. 频道栏目调用标签: {dede:channel type='top'}最近不少站长朋友表示要更换网站的服务器了,但是怕误操作导致网站被K,因为已经有不少站长朋友曾反馈,因为换了IP导致网站被K了。 那么今天就跟大家谈一下,如何更换网站服务器,换IP,把损失降低到最低,现在我们通过对织梦网站的举例,来进一步的操作! 一、备份您的网站 首先要做的是将我们的网站进行数据库的打包,对于织梦系统的网站来说,只需要在后台选择【系统】-【数据库备份/还原】选项即可,而后等待数据备份完成! 图1 织梦数据库备份操作 图2 织梦数据库备份完成 二、更换域名解析 在域名提供商那里更换您的域名解析,将域名解析到新的IP上,这里使用百度云加速为例。
图3 将域名解析到新的IP上 三、上传网站到新服务器 将您备份好的网站上传并解压到另外一台服务器上,并按照该网站程序的规则进行数据还原,并模拟访问网站是否正常,保证没有死链接的出现! 而使用织梦程序搭建的网站,我们只需要根目录下的整个文件夹打包上传到新的服务器上即可。 而后我们需要进行的操作就是网站的安装和数据的还原了,在上传了整个文件夹后,我们需要将织梦防止重新安装的锁定文件(在install文件夹下的install_lock.txt文件)删除!
图4删除锁定文件 接着我们修改锁定文件(install文件下的index.php.bak和module-install.php.bak文件),去除它们的后缀名.bak。
图5 修改锁定文件后缀名 访问我们的新服务器上的域名/install/index.php进行织梦网站的重新安装!
图6 织梦网站的重新安装 图7 进行织梦程序的安装
DEDECMS标签调用资料 大全 ——织梦模板网整理发布 织梦模板网[https://www.doczj.com/doc/8011305512.html,]免费提供精品织梦模板下载,以DEDE模板最全,最新,最方便用户为宗旨,让您可以轻松打造自己的网站-打造最专业的织梦模板发布基地,DEDECMS建站技术交流平台 1.DEDECMS关键描述调用标签: 2.模板路径调用标签: {dede:field name='templeturl'/} 3.网站标题调用标签: {dede:global name='cfg_webname'/} 4.栏目导航调用标签: 首页 {dede:channel type='top' row='8' currentstyle="
{dede:onetype typeid='ID'}[field:typename /]{/dede:onetype} 6.频道栏目调用标签: {dede:channel type='self'}
D E D E C M S织梦制作手册 超详细 Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】
DEDECMS模板制作教程 1.Arclist 标记的应用,使用率很高,相当实用,所以我们使用都必须熟练掌握。 2.Field标记在封面模板、列表模板、文档模板的使用频率很高,实用。主要用来获得到系统变量的值或者路径,用法很灵活。可以直接展示数据,如调用position,得到栏目一 > 栏目二”这样形式的链接;或者,调用templeturl得到/templets这样路径。 3.Channel 标记主要用于获取栏目列表,用法非常简单,主要是区分“type = top,sun/son,self ”的所调用的对象就行了。 4.Type标记表示指定的单个栏目的链接,用法非常简单。 5.Autochannel标记使用实例 6.Mytag标记使用实例板中多次出现的相同元素用一个自定义标记表示出来,从而达到,一次更改,全局更换的效果。辅助插件的广告管理也有相似的效果。 7.Type标记用于获取一组投票表单。其使用范围限于:封面模板。 8. Flink 标记使用实例用于获取友情链接。调用该标记后可以得到四种友情链接的形式。 9.Mynew标记使用实例用于获取站内新闻。站内新闻有利于站长及时与会员沟通。 10.ChannelArtlist标记使用实例用于获取当前频道的下级栏目的内容列表。该标记在封面模板(包括主页)中的经常被用到 11. List 标记使用实例 12.Pagelist 标记使用实例 13.Pagebreak标记使用实例 14.Prennext标记使用实例 15.Pagetitle标记使用实例 模板教程【Arclist 标记使用实例】(一) Arclist标记的使用思路、步骤: 一、明确使用范围 我们在使用任何标记的过程中,都必须明确其使用的范围,否则可能无法正常调用该标签,【Arclist 标记】的使用范围是: 封面模板、列表模板、文档模板。 即对应templets\default\文件夹下的 index_识别模板、list_识别模板、article_识别模板) 二、通过调试了解其使用方法 我调试的方法是: 将templets\default\文件夹下的文件代码,全部掏空。放入调用【Arclist 标记】的代码,再在IE 中访问网站主页,就可以得到返回的数据。 注意:其它文件保持不变,我不懂PHP,只能用这种方式调试,相信朋友们很容易上手的。 我调试【Arclist 标记】的具体代码如下: {dede:arclist typeid='' row='1' titlelen='20' infolen='' imgwidth='100' imgheight='80'} 文章ID:[field:ID/]
文章标题:[field:title/]
文章短标题:[field:shorttitle/]
文章标题的文字链接:[field:textlink/]
织梦广告代码(最全篇) 一、添加方法 1、添加广告(可省略) 模块--铺助插件-广告管理-添加 2、调用代码 模板-默认模板管理:列表页头部模板head.htm、底部模板footer.htm、主页模板index.htm,文章内容页模板article_article.htm等,相应位置将下方红色的(自定义人生励志网https://www.doczj.com/doc/8011305512.html,)替换成广告代码。 二、首页广告 主页模板index.htm 1、logo右边 468*60最佳。广告管理—系统自带的广告—–更改—–正常显示内容–把自己的广告代码(图片)放入。 2、导航与搜索框之间(首页及频道栏目) 960*90最佳。列表页头部模板head.htm
DedeCms模板安装/制作概述: DedeCms系统的模板是非固定的,用户可以在新建栏目时可以自行选择栏目模板,官方仅提供最基本的默认模板,即是内置系统模型的各个模板,由于DedeCms支持自定义频道模型,用户自定义新频道模型后,还需要按该模型的字段设计一套新的模板,此外,DedeCms也支持使用风格的形式使用模板,默认风格是default,它表示系统默认使用cmspath/templets/default 这个文件夹的模板,如果你下载了一套新的模板,你可以不必要删除default 原有的文件,把下载的模板文件夹命名你想要的风格名称,如style2 等,然后在后台修改了默认的模板风格名称为style2 ,那系统将使用templets/style2 这文件当作默认模板,但是若你手工指定了栏目模板的位置,则后台参数风格的定义无效。 一、概念,设计和使用模板,必须要理解下面几个概念 1、板块(封面)模板: 指网站主页或比较重要的栏目封面频道使用的模板,一般用“index_识别ID.htm”命名,此外,用户单独定义的单个页面或自定义标记,也可选是否支持板块模板标记,如果支持,系统会用板块模板标记引擎去解析后才输出内容或生成特定的文件。 2、列表模板: 指网站某个栏目的所有文章列表的模板,一般用“list_识别ID.htm” 命名。 3、档案模板: 表示文档查看页的模板,如文章模板,一般用“article_识别ID.htm” 命名。 4、其它模板: 一般系统常规包含的模板有:主页模板、搜索模板、RSS、JS编译功能模板等,此外用户也可以自定义一个模板创建为任意文件。 二、命名,DedeCms模板默认命名规则如下 1、模板保存位置: 模板目录:cmspath/templets/样式名称(英文,默认为default,其中system为系统底层模板,plus为插件使用的模板)/具体功能模板文件}
关键描述调用标签: -------------------------------------------------------------------------------- 模板路径调用标签:{dede:field name='templeturl'/} -------------------------------------------------------------------------------- 网站标题调用标签:{dede:global name='cfg_webname'/} -------------------------------------------------------------------------------- 栏目导航调用标签:首页 {dede:channel type='top' row='8' currentstyle="
DedeCMS V5.3二次开发手册 一、模板篇 1.1、主要模板文件与功能说明 DedeCMS系统的模板是非固定的,用户可以在新建栏目时可以自行选择栏目模板,官方仅提供最基本的默认模板,即是内置系统模型的各个模板,由于DedeCMS支持自定义频道模型,用户自定义新频道模型后,还需要按该模型的字段设计一套新的模板,此外,DedeCMS 也支持使用风格的形式使用模板,默认风格是default,它表示系统默认使用{cmspath}/templets/default 这个文件夹的模板,如果你下载了一套新的模板,你可以不必要删除default 原有的文件,把下载的模板文件夹命名你想要的风格名称,如style2 等,然后在后台修改了默认的模板风格名称为style2 ,那系统将使用{cmspath}/templets/style2 这文件当作默认模板,但是若你手工指定了栏目模板的位置,则后台参数风格的定义无效。 一、概念,设计和使用模板,必须要理解下面几个概念 1、板块(封面)模板: 指网站主页或比较重要的栏目封面频道使用的模板,一般用“index_识别ID.htm”命名,此外,用户单独定义的单个页面或自定义标记,也可选是否支持板块模板标记,如果支持,系统会用板块模板标记引擎去解析后才输出内容或生成特定的文件。 2、列表模板: 指网站某个栏目的所有文章列表的模板,一般用“list_识别ID.htm” 命名。 3、档案模板: 表示文档查看页的模板,如文章模板,一般用“article_识别ID.htm” 命名。 4、其它模板: 一般系统常规包含的模板有:主页模板、搜索模板、RSS、JS编译功能模板等,此外用户也可以自定义一个模板创建为任意文件。 二、命名,DedeCMS模板默认命名规则如下 1、模板保存位置: 模板目录:{cmspath} /templets/样式名称(英文,默认为default,其中system为系统底层模板,plus为插件使用的模板)/具体功能模板文件} 2、模板文件命名规范: (1)index_识别ID.htm:表示板块(栏目封面)模板; (2)list_识别ID.htm:表示栏目列表模板; (3)article_识别ID.htm:表示内容查看页(文档模板,包括专题查看页); (4)search.htm:搜索结果列表模板; (5)index.htm:主页模板; 注解:[识别ID]可以在“频道模型管理”的地方获得,当然,你也可以在“频道模型管理”的地方确定某个频道的模板命名。 例:list_image.htm 表示是就是内容类型为图片集的栏目默认列表模板。 article_article.htm 表示的是文章查看页模板。
我选择的是用xampp配置环境 1、xampp的安装 下载地址:https://www.doczj.com/doc/8011305512.html,/zh_cn/xampp-windows.html 安装过程 方法A:使用安装包进行安装 使用安装包来安装XAMPP是最简单的方法。
XAMPP win32的安装向导 安装过程结束后,您会在开始/程序/XAMPP菜单下找到XAMPP。您可以使用XAMPP控制面板来启动/停止所有服务或安装/卸载所有服务。 XAMPP控制面板能启动/停止Apache、MySQL、FilaZilla和Mercury,或直接将其安装为服务
方法B:不使用安装包进行安装 如果不用安装包,则可下载7-ZIP压缩包或ZIP压缩包,并将其解压至您选择的文件夹中。 本图中,我们将XAMPP解压到“D:\program files”路径下的“D:\program files\xampp”文件夹中。之后,打开XAMPP所在的文件夹,并运行其中的“setup-xampp.bat”。 这样能使配置文件中的路径信息得到更新。
最后,通过那些批处理文件或图形界面的“xampp-control.exe”启用不同的服务即可。 注意:如果您使用的是XAMPP的安装包,您不需要运行“setup_xampp.bat”。 ?我想使用免手动配置的XAMPP!? 如果您将XAMPP解压到根目录(比如c:\xampp或d:\xampp等等),您可以尝试直接启动XAMPP。这意味着您不需要先运行“setup_xampp.bat”进行配置。Apache、MySQL和Mercury邮件服务器能够正确启动!只有FileZilla FTP服务器不会启动,因为它需要绝对路径。使用这种方法请注意:不要解压到双重xampp文件夹中(如c:\xampp\xampp)!只能使用一个xampp文件夹(如 d:\xampp(\apache等等))。如果您使用了双重文件夹,那么您必须先运行“setup-xampp.bat”的配置过程。 2、xampp的测试 https://www.doczj.com/doc/8011305512.html,/zh_cn/xampp-windows.打开html
◆织梦内容管理系统模板标签代码参考 【Arclist 标记】 这个标记是DedeCms最常用的一个标记,也叫自由列表标记,其中 hotart、coolart、likeart、artlist、imglist、imginfolist、specart、autolist 这些标记都是由这个标记所定义的不同属性延伸出来的别名标记。 功能说明:获取指定的文档列表 适用范围:封面模板、列表模板、文档模板 基本语法: {dede:arclist typeid='' row='' col='' titlelen='' infolen='' imgwidth='' imgheight='' listtype='' orderby='' keyword=''} 底层模板(InnerText) {/dede:arclist} 属性说明: [1] typeid='' 表示栏目ID,在列表模板和档案模板中一般不需要指定,在封面模板中允许用","分开表示多个栏目; [2] row='' 表示返回文档列表总数; [3] col='' 表示分多少列显示(默认为单列); [4] titlelen='' 表示标题长度; [5] infolen='' 表示内容简介长度; [6] imgwidth='' 表示缩略图宽度; [7] imgheight='' 表示缩略图高度; [8] type='' 表示档案类型,其中空值、不使用这个属性或type='all'时为普通文档 § type='commend'时,表示推荐文档,等同于 {dede:coolart}{/dede:coolart} § type='image'时,表示必须含有缩略图片的文档,等同于{dede:imglist}{/dede:imglist}、{dede:imginfolist}{/dede:imginfolist} § type='spec'时,表示专题,等同于标记{dede:specart}{/dede:specart} 以上属性值可以联合使用,如: type='commend image' 表示推荐的图片文档 [9] orderby='' 表示排序方式,默认值是 senddate 按发布时间排列。 § orderby='hot' 或 orderby='click' 表示按点击数排列 § orderby='pubdate' 按出版时间排列(即是前台允许更改的时间值) § orderby='sortrank' 按文章的新排序级别排序(如果你想使用置顶文章则使用这个属性) § orderby='id' 按文章ID排序 § orderby='postnum' 按文章评论次数排序 § orderby='rand' 随机获得指定条件的文档列表 [10] orderway='' 值为 desc 或 asc ,指定排序方式是降序还是顺向排序,默认为降序。 [11] keyword='' 表示含有指定关键字的文档列表,多个关键字用","分开 [12] channelid='' 表示特定的频道模型ID,内置的频道:专题(-1)、文章(1)、图集(2)、Flash(4)、软件(3) [13] limit='起始,结束' 表示限定的记录范围,row属性必须等于"结束 - 起始",mysql的limit语句是由0起始的,如“limit 0,5”表示的是取前五笔记录,“limit 5,5”表示由第五笔记录起,取下五笔记录,使用了本属性后,row属性将无效。 [14] att='数值' 表示自定义属性值