dedecms中runphp=yes标签调用方法 – DeDecms


avatar
pcwnas 2023-04-21 206

原文来自:https://www.zixuephp.com

dedecms中runphp=yes标签调用方法

在dedecms中如果有一些模板标签实现不了我逻辑我们可以直接在页面调用php标签了,我们只要在模板中使用runphp=yes然后就可以进入常用的php写法了,具体看一些例子.

runphp='yes'在循环中的应用,代码如下:

  1. {dede:arclistrow=14titlelen=32noflag='h'}
  2. <li><ahref="[field:arcurl/]">[field:title/]</a>
  3. [field:idrunphp='yes']
  4. if(@me==5){
  5. @me='选中';
  6. }else{
  7. @me='没选中';
  8. }
  9. [/field:id]

那么我们再来一些更高级的runphp=yes标签中调用其他field值,例子,代码如下:

  1. {dede:php}$GLOBALS['xxoo']=$refObj->Fields['fieldname']{/dede:php}
  2. {dede:field.xxxxrunphp="yes"}@me="test".@me."-test".$GLOBALS['xxoo'];{/dede:field.xxxx}

即,先开一个PHP的标签,把想赋的值替换给global变量,然后在另外的运行中将field值赋值给他,如果是内容页使用以下代码:

  1. {dede:field.idrunphp='yes'}
  2. global$cfg_cmspath;
  3. $tags=GetTags(@me);
  4. $revalue='';
  5. $tags=explode(',',$tags);
  6. foreach($tagsas$key=>$value){
  7. if($value){
  8. $revalue.='<ahref="'.$cfg_cmspath.'/tags.php?/'.$value.'/">'.$value.'</a>,';//phpfensi.com
  9. }
  10. }
  11. @me=$revalue;
  12. {/dede:field.id}