织梦dedecms自增变量autoindex标签的使用(转)

织梦dedecms自增变量autoindex标签的使用

例1:

{dede:arclist titlelen=‘120‘ row=‘8‘ typeid=‘2‘}
         <li class="li[field:global.autoindex/]"><a href="[field:arcurl /]" title="[field:title/]" target="_blank" >[field:title function=‘cn_substr(@me,10)‘/]</a></li>
 {/dede:arclist}

例2:

{dede:arclist row=‘6‘ titlelen=‘60‘ orderby=‘pubdate‘ typeid=‘1‘ idlist=‘‘ channelid=‘1‘}

[field:global name=autoindex/]

[field:global name=autoindex runphp="yes"]@[email protected]+5;[/field:global]

[field:global name=autoindex runphp="yes"](@me%2==0)? @me="|":@me="";[/field:global][field:textlink/]

[field:global name=autoindex runphp="yes"](@me!=8)? @me="|":@me="";[/field:global]

意思就是当autoindex等于8时候这个标签为空,否则为“|”。

{/dede:arclist}

在{dede:arclist/}这个标签中大家都知道有个[field:global.autoindex/],这个变 量每生成一行就+1,那很多人希望{dede:sql/}标签也需要加上这个功能,很多朋友提问,肯定会认为官方不会去做,其实不然,官方主要希望大家能 够一同分享这种使用、开发的小技巧,小经验,其实这个东西很简单,自己稍微摸索下就可以知道。

下面 我们就开始增加这个小扩展,我们知道在V5.3中织梦的标签已经分离出来,也就是类似于arclist这样的标签可以自己修改或者二次开发,程序这些标签 存放的目录在/include/taglib文件夹下面,我们可以看那个文件名,就很容易知道这些标签文件名和标签的对应关系。

那我们现在需要修改的是{dede:sql/}这个标签,那我们就修改sql.lib.php这个文件。

打开后我们找到第34行,也就是代码

$ctp->LoadSource($Innertext);

处,在下面加上以下一段代码:

$GLOBALS[‘autoindex‘] = 0;

这段代码就是定义一个全局变量,并赋值为0,接下来我们只需要将下面代码进行下修改:

while($row = $dsql->GetArray($thisrs))

{

$sqlCt++;

foreach($ctp->CTags as $tagid=>$ctag){

if(!empty($row[$ctag->GetName()])){ $ctp->Assign($tagid,$row[$ctag->GetName()]); }

}

$GLOBALS[‘autoindex‘]++; //每循环一次加上一个1然后解析出来

$revalue .= $ctp->GetResult();

}

这样一来,这个[field:global.autoindex/]标签就可以在那个{dede:sql/}中使用了,我们举个例子:

{dede:sql sql=‘select * from[url=mailto:#@__archives]#@__archives‘[/url]}

[field:global.autoindex/]-[field:title/]

{/dede:sql}

怎么样?很简单吧,其实这种扩展还有很多很多,自己可以试试哦。

你这样写就行了:

{dede:global name=‘b‘ runphp=‘yes‘}

ob_start();

extract($GLOBALS,   EXTR_SKIP);

//-----------------------

//下面是任意PHP代码

print_r($this->refObj->Fields); //测试调用当前文档类的字段数组(只支持PHP5)

//----------------------

//返回值给标签自身

@me = ob_get_contents();

ob_clean();

{/dede:global}

当然,你想支持这种语法也行,修改一下模板类,载入模板内容时把 替换为

@me = ob_get_contents();

ob_clean();

{/dede:global}

还有一种做法,自定义一个PHP标签

Copy code

时间: 2024-10-22 22:05:12

织梦dedecms自增变量autoindex标签的使用(转)的相关文章

织梦(dedecms)系统常用全局变量调用标签及路径

{dede:global.cfg_memberurl/} 指的是会员中心 对应/member/目录 {dede:global.cfg_cmsurl/} 对应的是网站根目录/ {dede:global.cfg_dataurl/} data目录对应 /data/ {dede:global.cfg_basehost/} 网站地址 比方:http://www.sina.com {dede:global.cfg_webname/} 网站名称 {dede:global.cfg_soft_lang/} 网页编

织梦dedecms简略标题调用标签用法指南

我们在使用织梦DEDECMS建站过程中,为了使调用的文章标题简短且相对完整(原文标题太长),只好使用了调用简略标题这个方法,使标题显示为简短标题,指向标题时显示完整的标题.并获得文章静态地址链接 下面来看看DEDE织梦CMS简略标题调用方法:  使用的代码如下: 复制代码 代码如下: <ul>  {dede:arclist titlelen='60' orderby='pubdate' row='6' typeid='5'}  <li><a href=”[field:arcu

织梦 dedecms 中LOOP 万能标签循环 调用 arcurl标签(获取链接)

在DEDECMSV5.3中,提供了loop万能循环标签,但是此循环标签只能循环出该表中的字段,而“[field:arcurl/]”链接标签并不能被解析出来,而DEDECMS官方论坛上也没有找到相关的解决办法,所以只有自己动手写代码了! 这是官方提供的代码:{dede:loop table='dede_archives' sort='' row='4' if=''}<a href='[field:arcurl/]'>[field:title/]</a>{/dede:loop}以下是我

织梦dedecms标签调用集合,绝对是仿站必备利器

今天分享下整理了织梦dedecms标签调用集合,绝对是仿站必备利器啊,觉得有用就转走吧!温馨小提示:CTRL+F 搜索你需要的标签名,就可以方便找到:织梦dedecms标签调用集合-首页标签:网站导航标签: {dede:channel row="10" type="top" col="1" currentstyle="<li class='hover'><a href='~typelink~' ~rel~><

织梦Dedecms主要文件夹目录及模板文件说明

虽然织梦DedeCMS因为安全问题被人所诟病,但瑕不掩瑜,无论从用户群数量还是时间等各方面,织梦DedeCMS都是国内排名前几的CMS建站程序.如果你想学习CMS的二次开发,织梦DedeCMS是必须需要研究的.对织梦DedeCMS的二次开发来说,了解织梦的目录构成.文件.函数则是必备的功课. 今天整理一篇关于Dedecms目录介绍的文章,对织梦DedeCMS的目录结构.核心文件.模板文件等做一个简单的介绍. 以下就是默认的织梦DedeCMS程序根目录中的各大文件夹和文件: /dede //管理后

织梦dedecms中html和xml格式的网站地图sitemap制作方法

sitemap是网站上各网页的列表.创建并提交sitemap有助于百度(Google)发现并了解您网站上的所有网页,包括百度通过传统抓取方式可能找不到的网页.还可以使用sitemap提供有关你网站的其他信息,如上次更新日期.sitemap文件的更新频率等,供百度 (Google)spider参考. 百度(Google)对已提交的数据,不保证一定会抓取及索引所有网址.但是,百度(Google)会使用sitemap中的数据来了解网站的结构等信息,这样可以帮助百度改进抓取策略,并在日后能更好地对网站进

织梦dedecms建网站技巧:4个细节问题和技巧

相信很多站长朋友都会认识织梦dedecms这个网站程序,并且这一款程序受到很多人的喜爱,原因是他能够生成静态页面,这样是非常便于网站的SEO优化,另外织梦程序使用简单使用,成为大部分企业网站和资讯网站的站长的首选.但在使用织梦的过程中也会遇到一些问题和麻烦,今天彭健跟大家分享一下一些细节的问题和使用技巧. 一.织梦简略标题的应用 大家都知道,搜索引擎对于图片的识别的技术是非常不成熟的,所以我们在图片上加入ALT说明标签便于搜索引擎了解图片,但对于使用织梦程序建站的时候,首页.栏目页面的一些图片缩

织梦DEDECMS网站首页如何实现分页翻页

织梦DEDECMS模板网站首页如何实现首页分页和翻页 方法如下:(三种方法,自己选择一种来实现分页吧) 第一种:调用ajax和参数的(不推荐)1.必须在DEDE首页模板中的<head></head>中引入(详细看你的默认模板) <script language="javascript" type="text/javascript" src="{dede:global.cfg_cmsurl/}/include/dedeajax2

织梦dedecms如何对列表添加判断语句

{channelartlist}这个标签在织梦 dedecms中是频道列表的意思,加上这个标签,系统的所有栏目就会按顺序排列显示,今天tom在做模板的时候想在织梦dedecms的频道列表中对列 表的分布进行区分,也就是排在第一的栏目采用一种class样式,排在第二的栏目则采用另一种class样式,在wp中这种功能可以通过简单的php语言 实现,现在tom研究发现在织梦dedecms中也不必望洋兴叹了,利用dede:global标签也可以实现奇偶判别,从而达到这种效果. 例如: 第一个栏目(奇数)