织梦CMS自定义标签在哪设置?网站模板自己做的,以前用过科讯CMS,不了解织梦,想知道怎么自己定义
一、输入你的账户和密码并登录到网站后台。
二、通过FTP将准备好的模板和默认模板一起上传到/templates。
三、在网站后台,点击系统基本参数。此时,您可以看到下面有一个“模板默认样式”,用于将默认“default”更改为模板文件夹名称并保存它。
四、单击生成更新主页。您可以看到“选择主页模板”后面仍然跟着“default””。此时,将其更改为“模板文件夹名称”。单击“更新”。
五、此时,主页正常,但列和内容页仍与以前相同。那是因为没有更新。在这里,我们需要更新列和内容页并更新缓存。
六、此时,主页将在后台生成并点击浏览。网站将正常显示,栏目和内容也将正常。如果仍然与原始页相同,则可以强制更新页或此时按F5键。
dede织梦如何添加“自定义属性”标签“症状”1、进入后台——系统——SQL命令行工具——运行SQL命令行,添加arcatt表字段:insert into`dede_arcatt`(sortid,att,attname) values(9,‘d‘,‘症状‘)2、添加archives表字段:alter table `dede_archives` modify `flag` set (‘h‘,‘c‘,‘p‘,‘f‘,‘s‘,‘j‘,‘a‘,‘b‘,‘d‘) default NULL 看着加粗的SQL指令,顾名思义是先在表里插入新记录(要添加的属性),然后修改另一个关联表的flag字段以添加标签d。没错,就是这样简单,你已经成功添加了新的属性并可以模板调用了。当然你也可以用phpmyadmin数据库工具傻瓜式添加属性。需要说明的是: 代码第1行:values(9,‘d‘,‘新自定义属性‘) 是根据我们需要自行定义的,其中9是sortid的值,是不可重复的,也就是每添加一个自定义属性,sortid的值就应该递增到 10,11,12,以此类推!d是alt的值,是自定义属性的标记,与已存在的标记符号不能重复,“症状”是中文名称,是方便人们直观地勒戒自定义 属性的含义的,可以根据需要改为其他名字,不影响调用。代码第2行:set (‘c‘,‘h‘,‘p‘,‘f‘,‘s‘,‘j‘,‘a‘,‘b‘,‘d‘),括号中的字母对应已存在的标记符号和您需要添加的标记符号,并按顺序录入,不得改变先后顺序。例如,d排序第9位,则对应第一行代码中添加的自定义属性““评论d”。2、后台——模板——默认模板管理——indexhtm在“indexhtm”中进行修改,在需要调用症状的地方添加代码“{dede:arclist flag=‘d‘ limit=‘0,1‘ infolen=‘230‘}”3、添加文档,在自定义属性中将“新自定义属性”勾选,就可实现,勾选的文档出现在首页,为勾选出现在内页。删除自定义属性:
DELETE FROM dede_arcatt WHERE sortid=‘9‘
dedecms:织梦文章如何添加“自定义属性”标签(sql命令行工具)
标签:
既然你用过kesioncms应该知道模板的绑定洛,你先到织梦后台系统设置将模板风格换成你自定义的名字(当然后台主页模板绑定的路径也要换),你在到根目录下的templets文件下建自定义的模板名字,dedecms里面主页是indexhtm,栏目也都是list_自定义名字htm,而内容页都是article_自定义名字htm,这些可以根据你的栏目名随意设定,设定完了你到后台分别添加栏目,在模板绑定里面可以设定自定义的模板,至于自定义标签在织梦里面用得少(和kesioncms不太一样呵呵,我觉得还是kesiongcms好用),其实都是用系统的标签来调文章,栏目什么的,这个你可以根据帮助文档里面的标签,或者在templets/default下的系统默认模板里面找相应的标签,或者在百度下载dedecms标签进行防站就OK了!顺便说一下cms只要懂一种其它的只要找到模板的位置,我觉得就ok了,至于标签调用网上大把的呵呵!!!
一共是两大步,
首先是常规选项。常规选项中需要改动的地方不大,除了栏目标题和路径,其他的完全可以不改。
修改栏目的常规选项
可以选择为频道封面
当然,因为单页类栏目本身是不用发表文章的,所以栏目属性使用“频道封面”倒是似乎更加贴切一些,以后更新的时候可以一目了然。
其实不进行修改也是可以的,因为这里并不关键,关键的是下面的高级选项的设置。
其次是高级选项。高级选项中,有设置模板的地方。这里就需要注意了,因为不管是我们选用“频道封面”还是“最终栏目列表”,其默认的模板都是无法实现我们要制作的单页内容的,那么我们就需要自定义一个模板。假设我们使用singllepagehtm来实现单页面的调用,那么我们就需要对其模板进行设置,如果是选频道封面就修改频道封面,反之则修改最终栏目列表。以“最终栏目列表”为例,如图:
高级选项中修改模板设置
最后是栏目内容。栏目内容,就是我们实现动态更新的栏目内容了。我们看到,dedeCMS提示我们栏目内容是替代原来栏目单独页的更灵活的一种方式,可在栏目模板中用{dede:fieldcontent/}调用,通常用于企业简介之类的用途,所以我们只要在这里添加企业简介之类的内容,就可以了。而不用笨拙的去修改静态页面。
一切妥当之后,我们进行第二大步——修改singlepagehtm模板。
修改模板很简单,我们找到templets路径下相应模板分类的singlepagehtm,然后我们对其进行编辑,我们看到,原始的singlepagehtm是调用的{dede:fieldbody/}这里是调用普通文章的内容,我们要做单页模板,只要修改调用的地方为{dede:fieldcontent/}就完事大吉了。
修改模板的调用内容
我们看到还有个相关页面,这里我们弃之不用倒显得浪费了。
可以利用起来的相关页面
我们也可以对其进行一番改造,调用处相关的一些单页类的栏目来起到增加内链的作用。调用很简单,假设我们企业简介的ID为1,其他单页类栏目ID分别为2、3、4的话,我们可以这样写来实现这些栏目的调用:
{dede:channelartlist typeid='9,12'}
{dede:type}
[field:typename/]
{/dede:type}
{/dede:channelartlist}
保存,生成栏目就可以看到效果了。当然默认的模板是有些寒酸,不过我们可以自己制作模板让其更加美观一些,那就看你CSS运用的怎么样了!我们看一个效果比较美观的:
通过栏目内容调用的单页面
如果你有更好的方法来制作可以动态更新的单页的话,欢迎大家留言板留言,本站感激之至。
好今天的dede每日一课就到这里,欢迎大家关注其他的中国SEO的dede建站每日一课的内容。同时,我们热烈欢迎会员和学员投稿,具体的投稿方式为,先注册会员,然后点击发布文章即可,如果通过审核发布成功,本站将会有小礼品相送哦!~
Dedecms 的首页样式文件一般在配套的模板文件里,默认模板的css样式在skin目录下css文件夹里的stylecss文件里,其他模板css样式都是自定义的,需要具体分析。
一、dedecms 默认模板样式。
1、默认模板样式位置是固定的,直接用Vscode编辑器打开模板文件目录,定位到“default”文件夹下,就可以看见style文件夹,里面都是默认模板的样式。
2、一般首页的样式都在“dedecmscss”文件里,打开修改即可。
二、查看自定义模板css样式。
自定义模板的css样式比较灵活,开发者可能会把样式文件放在任何一个目录下,此时就需要自己去分析模板。
1、打开dedecms的目录,打开自定义模板文件夹。
2、接着打开首页模板文件“indexhtm”,可以看到,“<link>”标签里的 css文件路径,一般就是模板套用的css样式,只要打开它就可以修改了。
3、按下“crtl”键,此时编辑器页面会出现“按住Crtl并单击可访问连接的提示”。
4、此时按住“crtl”鼠标左键单击link标签下的路径,Vscode就会自动定位到该文件的目录并打开改文件。
最后就可以修改样式了。
利用模板。目前PHP的模板可以说是很多了,有功能强大的smarty,还有简单易用的smarttemplate等。它们每一种模板,都有一个获取输出内容的函数。我们生成静态页面的方法,就是利用了这个函数。用这个方法的优点是,代码比较清晰,可读性好。
这里我用smarty做例子,说明如何生成静态页:
<php
require("smarty/Smartyclassphp");
$t = new Smarty;
$t->assign("title","Hello World!");
$content = $t->fetch("templates/indexhtm");
//这里的 fetch() 就是获取输出内容的函数,现在$content变量里面,就是要显示的内容了
$fp = fopen("archives/2005/05/19/0001html", "w");
fwrite($fp, $content);
fclose($fp);
>
在\dede\include\extendfuncphp文件中添加如下函数:
function getArticleList($category=0,$order="",$limit="0,200"){
global $dsql;
$query = "SELECT arc,tptypedir,tptypename,tpcorank,tpisdefault,tpdefaultname,tpnamerule,
tpnamerule2,tpispart,tpmoresite,tpsiteurl,tpsitepath
FROM `#@__archives` arc LEFT JOIN `#@__arctype` tp on arctypeid=tpid
where tpid=$category";
//此sql语句我只加了where判断文章所属分类
//其他的order limit 你根据需要自己添加
$dsql->SetQuery($query);
$dsql->Execute('lit');
$arr = array();
$cnt = 0;
$str = "";
while ($row = $dsql->GetArray('lit')) {
if($cnt%4 == 0){
$str = "<div class='css1'>";
}
if($cnt%4 > 0){
$class = "css3";
}else{
$class = "css2";
}
$str = "<span class='"$class"'>"$row['title']"</span>";
$cnt++;
if($cnt%4 == 0){
$str = "</div>";
}
//$row中可用的常用字段如下:$row['id'],$row['typeid'],$row['senddate'],$row['title'],$row['ismake'], row['arcrank'],$row['namerule'],$row['typedir'],$row['money'],$row['filename'],$row['moresite'],$row['siteurl'],$row['sitepath']
}
return $str;
}
然后在模板中使用
{dede:field name='typeid' function="getArticleList(@me)" /}
将分类的id传给此函数就可以调用到数据,输出就是你要的格式。
输出内容你修改下php文件,常用字段都给你写在注释里了。
如果可以请也将我昨天给你回答的采纳一下。
0条评论