definitely和absolutely的区别 DEDE模板中使用php和if判断语句的技巧

软件教程 2024-02-01 07:05:52

{dede:field.zufang_tel php=yes}

if(@me==””||empty(@me))

@me=”

”;

{/dede:field.zufang_tel}

注解:

@me:是现阶段表头的值,你能在if中给其表达式,接着推论完结后它的值就变为你赋的值,列印出

利皮扬卡如下表所示:

方式一:

用个if推论句子,推论两个表头与否有小东西,代表者输入1,没则输入2,

上面是的标识符读取文本页模版中

{dede:field.audio runphp=’yes’}

if(@me<>”)@me=”假如audio表头里有小东西就输入那个,全力支持html标识符,因此能在标识符中采用@me来初始化audio表头值,但千万别有双引号。”;

else

@me=”假如audio表头里没小东西就输入那个,也是全力支持html标识符,因此也是能在标识符中采用@me来初始化audio表头值,也是千万别有单引号。”;

{/dede:field.audio}

audio是自己添加的两个表头

方式二:

给DEDE模版加了新功能 if推论功能 标签iif和elserun

增加了变量$str和$str_count $str是最终显示的文本 $str_count是循环显示文本的条数。

增加了标签iif 和 elserun 满足iif的条件就正常运行 假如不满iif的条件就运行elserun

假如不满足iif的条件,也没指定elserun就返回空白

iif和elserun都是正常的php语法.

{dede:arclist orderby=’click’ titlelen=’30’ row=’10’ iif=”$str_count>1″ elserun=”$str=暂时没文本”}

[field:textlink/]

{/dede:arclist}

运行结果 假如arclist没返回结果就显示 暂时没文本

{dede:global name=’cfg_webname’ ii<a style="color:rgb(98, 0, 238);" ></a>f=”strlen($str)>10″ elserun=”$str.=’我的网站”/}

运行结果 假如cfg_webname长度大于10就正常显示

否则就在标题后面增加我的网站

显示

更改方式 只更改两个文件是/dede/include/pub_dedetag.php

(1)

搜索

foreach($GLOBALS[$arr] as $k=>$v){

更改成

$GLOBALS[‘autoindex’]=0;

foreach($GLOBALS[$arr] as $k=>$v){

$GLOBALS[‘autoindex’]++;

(2)

搜索

$this->CTags[$i]->TagValue=$DedeMeValue;

}

在后面加上

$str=$this->CTags[$i]->TagValue;

$str_count=$GLOBALS[‘autoindex’];

if( $this->CTags[$i]->GetAtt(“iif”)!=”” ){

if(! eval(“return {$this->CTags[$i]->GetAtt(‘iif’)} ;” )){

if($this->CTags[$i]->GetAtt(“elserun”)) {

$this->CTags[$i]->TagValue=eval(“return {$this->CTags[$i]->GetAtt(‘elserun’)} ;” );

}else{

$this->CTags[$i]->TagValue=”;

}

}

}

发表回复