最近使用织梦dedecms自定义了一个模型,然后想加个高级搜索的功能,因为之前一直没做过dedecms自定义模型的高级搜索以为会很复杂,其实跟系统自带文章模型的搜索是一样的,先在后台的“内容模型管理”中生成一下高级搜索模板
但是最后碰到一个问题,文章标题显示正常,但是链接调用不出来,后来看了下advancedsearch.php文件发现
$query = "SELECT main.id AS aid,main.*,main.description AS description1, type.* FROM $maintable main LEFT JOIN dede_arctype type ON type.id = main.typeid LEFT JOIN $addontable addon ON addon.aid = main.id $where $orderby"; |
这段代码就是查询字段的,其中addon就是附加表了,但这里并没有查询addon的字段,知道了问题所在,修改就简单多了,只要加了addon的字段查询(SELECT addon.*,)就行
最终的代码为:
$query = "SELECT addon.*, main.id AS aid,main.*,main.description AS description1, type.* FROM $maintable main LEFT JOIN dede_arctype type ON type.id = main.typeid LEFT JOIN $addontable addon ON addon.aid = main.id $where $orderby"; |
如果加上后还是不行,请您确定你的搜索模板是有以下php代码
{dede:datalist}<?php$fields['stime'] = GetDateTimeMk($fields['senddate']);$fields['arcurl'] = GetArcUrl($fields['aid'],$fields['typeid'],$fields['senddate'],$fields['title'],$fields['ismake'],$fields['arcrank'],$fields['namerule'],$fields['typedir'],$fields['money']);$fields['typeurl'] = GetTypeUrl($fields['typeid'],MfTypedir($fields['typedir']),$fields['isdefault'],$fields['defaultname'], $fields['ispart'],$fields['namerule2'],$fields['moresite'],$fields['siteurl'],$fields['sitepath']);?>...{/dede:datalist} |
注:以上所说的advancedsearch.php为5.7版本的,如果你是5.6升级到5.7可能会有所不同。