dedecms自定义字段标签问题

dedecms自定义字段标签问题,第1张

Dedecms的标签调用的是有区域限制的,一些标签只能在文章页和首页以及频道页才能调用,但是单页面也想调用“最新文章”等一些文章列表,如果是用{dede:arclist} {dede:arclist /}这些标签肯定是调用不了的,哪要怎么办呢这个不用怕,这个问题dedecms早就想到了,在dedecms中有个“宏标签”功能,用这个功能可以实现全站调用。

  宏标签的设置:

  打开dedecms后台——>模板-->自定义宏标签-->智能标志向导

  1 选择一个你要的列表样式

  2 设置“调用栏目”,这里不用说了,就是想要调用的栏目。

  3 设置调用显示列表的文章条数,显示列数,标题长度,不过不设置也没事,回头想改还可以更改的。

  4 提取特定文档,如果你有需要调用特定的文章就要选择一下,如果么有,就不用选择。

  5 单条记录样式,这个有点重要,现在文章列表很多都是用<li></li>标签来做的,但是这里默认不是,如果你要在调用的时候适合你的页面,你需要自己修改一下,怎么修改

  这里示范一下,

  默认的标签:

  修改为<li></li>标签对的:

  还有很多功能,自己看支持字段。

  6“生成模版调用标记”

  7保存为自定义标记,这个很重要,一定要保存才可以了。要不下一步就么有内容可以做。

  8回到模板-->自定义宏标记 ,可以看到刚才保存的宏标记,如果不保存,这里是没有的。

  9点击“js调用”进行js调用代码提取

  10将刚才复制的那段js代码粘贴到你要的地方即可

  宏标签调用到此完成。

{dede:arclist titlelen=42 row=5 pagesize='20' channelid='1' addfields='worktime1'}

<tr>

<th><a href="[field:arcurl/]">

<p>[field:worktime1 function="MyDate('Y-m-d',@me)"/]</p></a>

</th>

</tr>

{/dede:arclist}

之前选择的自定义图集

一、添加一个获取地址的方法

打开 /include/extendfunc 文件(注:这个文件就是系统预留的自定义函数接口文件,主要用于二次开发用的。如果你是老版本,默认没有这个文件,自己创建一个PHP文件即可),在最下面的>上一行加入以下函数代码:(如果结尾没有>那就直接在最下面添加)

function GetOneImgUrl($img,$ftype=1){ if($img <> ''){ $dtp = new DedeTagParse(); $dtp->LoadSource($img); if(is_array($dtp->CTags)){ foreach($dtp->CTags as $ctag){ if($ctag->GetName()=='img'){ $width = $ctag->GetAtt('width'); $height = $ctag->GetAtt('height'); $imgurl = trim($ctag->GetInnerText()); $img = ''; if($imgurl != ''){ if($ftype==1){ $img = $imgurl; } else{ $img = '<img src="'$imgurl'" width="'$width'" height="'$height'" />'; } } } } } $dtp->Clear(); return $img; } }

可以直接用下面的方法调用

[field:自定义字段名 function="GetOneImgUrl(@me,显示类型)"/]

最终使用方法。

{dede:arclist typeid='12' addfields='datu' channelid='17' limit='0,7'}

<li><a href="[field:arcurl/]" target="_blank"><img border="0" src="[field:datu function='GetOneImgUrl(@me,1)'/]"></a></li>

{/dede:arclist}

最终调用到这个地址。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » dedecms自定义字段标签问题

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情