zoukankan      html  css  js  c++  java
  • dedecms搜索模板,使用{dede:list}标签调用自定义字段不显示(空白)

      前几天使用织梦做一个搜索功能,正常使用{dede:list}调用自定义内容模型中的自定义字段,代码如下:(自定义字段的调用可以参考:http://www.dede58.com/a/dedejq/5233.html,本文不再赘述)

    {dede:list row='100' addfields='zjtitle,zjfield' channelid='自定义内容模型id' pagesize='6'}
    <li>
      <div class="result_left">
        <a href="[field:arcurl/]">
          [field:image/]
        </a>
      </div>
      <div class="result_right">
        <h3><a href="[field:arcurl/]">[field:title/]</a></h3>

        <p>[field:zjfield/]</p>

        <span>
          <a href="[field:arcurl/]">[field:zjtitle/]</a>
            <small>科室:</small><a href="[field:typeurl/]">[field:typename/]

          </a>
        </span>
      </div>
    </li>
    {/dede:list}

      但是我们发现在搜索结果页模板中使用“[field:字段名]”标签无法正确调用,就算添加了列表附加字段也不行,如图(1)。

     图(1)

      搜索结果页调用自定义字段,以下具体方法及步骤如下:
    (1)找到并打开include目录下的extend.func.php文件,在文件末尾添加如下代码:

    function Search_addfields($id,$result){
        global $dsql; 
        $dedejs = $dsql->GetOne("SELECT * FROM `dede_zjtd998(内容模型附加表表名,如下图-图(2))` where aid='$id'");
        $name=$dedejs[$result];
        return $name;
    }

    图(2)

    (2)接下来找到并打开 include目录下的arc.searchview.class.php文件,搜索“ //处理一些特殊字段”,在下面添加如下代码:

    $row["zjtitle"]=Search_addfields($row["id"],"zjtitle");
    $row["zjfield"]=Search_addfields($row["id"],"zjfield");
    //标红处为所需调用的自定义的字段

    (3)在search.htm中 使用[field:zjtitle/][field:zjfield]标签,就可以调用出来相应字段内容了

      以上是博文的所有内容,希望能对大家有所帮助,再次感谢大家查阅,有任何建议和想法可以在评论区留言交流!

  • 相关阅读:
    自动化测试基础篇--Selenium文件上传send_keys
    自动化测试基础篇--Selenium中数据参数化之TXT
    自动化测试基础篇--Selenium中JS处理浏览器弹窗
    自动化测试基础篇--Selenium中JS处理滚动条
    自动化测试基础篇--Selenium单选框(Radio)复选框(CheckBox)
    自动化测试基础篇--Selenium弹出框alert
    自动化测试基础篇--Selenium select下拉框
    自动化测试基础篇--Selenium多窗口、句柄问题
    flask初探
    windows系统在python3.5环境下安装mysql组件
  • 原文地址:https://www.cnblogs.com/zw0718/p/10557612.html
Copyright © 2011-2022 走看看