找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1246|回复: 0

[分享] dedecms模板中运用dede标签时使用php和if判断语句的方法

[复制链接]
发表于 2018-2-26 09:02:54 | 显示全部楼层 |阅读模式 来自 中国–河南–新乡–牧野区
{dede:field.tong_gg php=yes}
if(@me==””||empty(@me)) 版权所有
@me=”<p>无</p>”;
{/dede:field.tong_gg}

注释:
@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=暂时没有内
容”}
<li><span>[field:textlink/]</span></li>
{/dede:arclist}
运行结果 如果arclist没返回结果就显示 暂时没内容
<title>{dede:global name=’cfg_webname’ iif=”strlen($str)>10″ elserun=”$str.=’我的网站’”/} </title>
运行结果 如果cfg_webname长度大于10就正常显示
否则就在标题后面增加我的网站
显示
更改方法 只更改一个文件就是/dede/include/pub_dedetag.php
一、搜索
  1. foreach($GLOBALS[$arr] as $k=>$v){
复制代码

更改成
  1. $GLOBALS['autoindex']=0;
  2. foreach($GLOBALS[$arr] as $k=>$v){
  3. $GLOBALS['autoindex']++;
复制代码

二、搜索
  1. $this->CTags[$i]->TagValue = $DedeMeValue;
  2. }
复制代码

在后面加上
  1. $str = $this->CTags[$i]->TagValue;
  2. $str_count = $GLOBALS['autoindex'];
  3. if( $this->CTags[$i]->GetAtt(“iif”)!=”” ){
  4. if(! eval(“return {$this->CTags[$i]->GetAtt(‘iif’)} ;” )){
  5. if($this->CTags[$i]->GetAtt(“elserun”)) {
  6. $this->CTags[$i]->TagValue=eval(“return {$this->CTags[$i]->GetAtt(‘elserun’)} ;” );
  7. }else{
  8. $this->CTags[$i]->TagValue=”;
  9. }
  10. }
  11. }
复制代码

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-11-19 07:31 , Processed in 0.045631 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表