DedeCMS多函数嵌套在调用标签的方法
在使用Dede的时候,用的最多的就是调用标签,而有些网站因为特殊性,在使用调用标签的时候需要对调用的内容进行二次加工处理,这个时候就可能会用到Dede的函数,比如我们最常见的截取字符长度的函数cn_substr,能实现对调用的内容进行长度截取,html2text能实现去html样式转换为纯文本字符,每个都有自己的用处。但是有的时候我们可能既要去样式又要截取字符,那么就要用到多函数嵌套了,今天余斗就说说如何使用dede的多函数嵌套功能(就拿cn_substr与html2text函数举例)。
基本语法:
获取指定数值的字符串
function=cn_substr(@me,
200)
去掉html样式,转换为纯文本字符
function=html2text(@me)
组合嵌套即提取指定个数的字符串并去掉html样式,转换为纯文本字符
{dede:field.content function=
“Html2Text(cn_substr(‘@me’,110))”/}
这段代码实现的是获取获取栏目信息摘要信息(提取110个字符[55个汉字]),删除hml标签元素,转为纯文本!
这就是最基本的DedeCMS的多函数嵌套,能实现我们在想调用指定内容的时候达到我们的多个目的。
高级语法:
函数一:function=a(x,y)
函数二:function=b(w,x)
函数三:function=c(x,y,z)
组合函数:function=
“b(c(a(‘x’,’y’,w,z)) )”
附DedeCMS的公用函数(集成于include/common.func.php文件中):
获得当前的脚本网址
function GetCurUrl()
返回格林威治标准时间
function MyDate($format=
‘Y-m-d H:i:s’,$timest=
0)
把全角数字转为半角
function GetAlabNum($fnum)
把含HTML的内容转为纯text
function Html2Text($str,$r=
0)
把文本转HTML
function Text2Html($txt)
输出Ajax头
function AjaxHead()
中文截取2,单字节截取模式
function cn_substr($str,$slen,$startdd=
0)
把标准时间转为Unix时间戳
function GetMkTime($dtime)
获得一个 0000-00-00 00:00:00 标准格式的时间
function GetDateTimeMk($mktime)
获得一个 0000-00-00 标准格式的日期
function GetDateMk($mktime)
获得用户IP
function GetIP()
获取拼音以gbk编码为准
function GetPinyin($str,$ishead=
0,$isclose=
1)
dedecms通用消息提示框
function ShowMsg($msg,$gourl,$onlymsg=
0,$limittime=
0)
保存一个cookie
function PutCookie($key,$value,$kptime=
0,$pa=
“/”)
删除一个cookie
function DropCookie($key)
获取cookie
function GetCookie($key)
获取验证码
function GetCkVdValue()
过滤前台用户输入的文本内容
// $rptype = 0 表示仅替换 html标记
// $rptype = 1 表示替换 html标记同时去除连续空白字符
// $rptype = 2 表示替换 html标记同时去除所有空白字符
// $rptype = -1 表示仅替换 html危险的标记
function HtmlReplace($str,$rptype=
0)
获得某文档的所有tag
function GetTags($aid)
过滤用于搜索的字符串
function FilterSearch($keyword)
处理禁用HTML但允许换行的内容
function TrimMsg($msg)
获取单篇文档信息
function GetOneArchive($aid)