织梦DEDE文章列表前面自动加递增数字标签
不少朋友需要在DedeCms的问答系统、留言本、会员空间导航里调用系统标签,但默认是不支持系统标签调用的,需要对系统文件进行简单的修改。
第一步:打开"/include/commonfuncphp",
然后在该文件中加入一个函数,代码如下:
function pasterTempletDiy($path)
{
require_once(DEDEINC"/arcpartviewclassphp");
global $cfg_basedir,$cfg_templets_dir;
$tmpfile = $cfg_basedir$cfg_templets_dir"/"$path;//模版文件的路径
$dtp = new PartView();
$dtp->SetTemplet($tmpfile);
$dtp->Display();
}
第二步,加上上面的函数之后,也就可以调用主站下的/templets/default/所有模板文件,比如要在问答模块的主页调用主站的随机文章,你可 以在主站 模板/templets/default/下新建一个headhtm文件,然后在headhtm里面加入你需要的标签和标签属性:
{dede:arclist titlelen='100' row='15' orderby='rand'}
<li><a href="[field:arcurl/]" title="[field:title/]">[field:title/]</a></li>
{/dede:arclist}
第三部,自定义yourfilephp文件,内容如下
<php
require_once("//include/commonincphp");
>
想读取公共文件,如:{dede:include filename=''headhtm/}就使用<php pasterTempletDiy("cdqx/headhtm");>
大功告成!
即可使用<php pasterTempletDiy("default/headhtm");>
Tag列表模板:templets\default\taglisthtm
Tag文章列表模板:templets\default\taghtm
调用方法:
{dede:tag row='60' sort='new'}
<a href='[field:link/]' class='tagc[field:highlight /]'>[field:tag /]</a>
{/dede:tag}
织梦tag标签是提取的文章关键字。
1、首先登录织梦网站后台,点击:系统—>SQL命令行工具(如图所示)。
2、打开SQL命令运行器,运行代码:ALTER TABLE `数据表前缀_archives` MODIFY COLUMN `keywords` char(168)(如图所示)。
3、找到article_editphp、article_addphp文件(如图所示)。
4、打开文件article_addphp,并找到代码:$keywords = cn_substrR($keywords,60),然后把数字60改成168(如图所示)。
5、打开文件article_editphp,并找到代码:$keywords = trim(cn_substrR($keywords,60));然后把数字60改成168,织梦程序修改标签限制字数就可以了。
使用dedecms中,发现{dede:datalist} 下 用 [field:array runphp='yes'] 或者 {dede:field name='array' runphp='yes'} 并不起作用。
经过一番搜索和验证,发现{dede:if} 可以用,下面是一个实例:
{dede:if $fields['content'] != ''}
//第一个语句
{else}
//第二个语句
{/dede:if}
说明:1、发现必须用$fields , 如果用$value 不起作用。
2、‘content’ 为你需要判断的字段。
一般是这样的代码:
<div class="dede_pages">
<ul class="pagelist">
{dede:pagelist listitem="info,index,end,pre,next,pageno" listsize="5"/}
</ul>
</div>
你可以在相应的css文件中,默认是:模版文件夹/default/style/pagecss
对应修改一下就可以了。
滑动效果是:dede_pages ul li a:hover
就是链接:a的hover事件。
第一个问题,拿你的三个标签举例,我是这样理解的:
{dede:fieldtypename/},这是是单独使用的标签;
[field:typename/],而像这样的,外层肯定有一个嵌套的标签;
{dede:field name=’typename‘/},这个其实和{dede:fieldtypename/}效果是一样的;
加dede前缀都一般都是外层的,比如说是{dede:arclist}这个标签,或者是单独使用的标签,如{dede:fieldbody/},而不加dede前缀,一般都是指的被嵌套在标签内部的标签;
其实dede:后面field的意思是字段,代表的是一个值;arclist的意思是一个表,代表着很多数据;这样理解会好很多的;
第二个问题,规范来说是用单引号的,但是用双引号也是可以的,建议你用单引号;
希望对你有帮助,不懂再问我就行
首页调用{dede:arclist typeid='xx' row='调用条数'channelid='文章模型id'addfields='自定义字段名' } [field:自定义字段/]{/dede:arclist}列表调用自定义字段:必须使字段可以在列表的底层模板中获得(自定义字段默认仅能在文档模板显示,启用此选项将使列表查询变慢,如无必要请不要选择)勾上他{dede:listpagesize='调用条数'channelid='文章模型id' addfields='自定义字段名'} [field:自定义字段/]{/dede:list}
0条评论