destoon采集论坛

 找回密码
 立即注册
查看: 736|回复: 0

destoon模块自定义字段的添加并让其支持搜索的方法

[复制链接]

227

主题

0

回帖

1627

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1627
发表于 2016-7-5 11:06:13 | 显示全部楼层 |阅读模式
今天看了看模块设置里的自定义字段功能的用法,试着加了个新字段glry,设置了值,然后去数据库moduleid的article表看,字段成功加上了。
于是去template下article文件夹的list.htm和show.htm里调看看能不能调得到,结果无论是用{$t[glry]}还是{$glry}这样都调不出来,就奇怪了,模块的fileds都以
字符串的方式存储在$MOD[fields]里,试着打印出来一看,竟然没有新加的glry字段在里面,难怪取不到了。网上查了下,原来新加了自定义字段还要自己手动到“模块设置-》基本设置”里把自定义的字段加到“列表或搜索主字段”这一项里,加好后,都可以成功调到了。
自定义字段是默认不支持搜索的,但很多情况下需要它支持搜索,网上搜到一个方法可以使它支持搜索,方法如下:
以sell模块为例,假设你在后台模块设置里添加了一个"glry"字段

   
        
            module/sell/search.inc.php
            其他模块一样
            1、搜索:$L['by_brand']  大约在31行   后面添加你字段的名称,可以直接为汉字 例如:
            $sfields = array($L['by_auto'], $L['by_title'], $L['by_content'], $L['by_introduce'], $L['by_company'], $L['by_brand'],'管理人员');
            2、在他下面那行
            $dfields = array('keyword', 'title', 'content', 'introduce', 'company', 'brand');
            修改为
            $dfields = array('keyword', 'title', 'content', 'introduce', 'company', 'brand', 'glry'); 其中的钢材为自定义的字段名称
            3、搜索:if($kw) $r['introduce'] = str_replac($replacef, $replacet, $r['introduce']);大约在129行左右
            在他的下面添加:
            if($kw) $r['glry'] = str_replac($replacef, $replacet, $r['glry']);
            我的自定义字段是glry名是管理人员
            到此自定义字段的搜索添加完毕。
        
   
这样在搜索界面就会多了一个“管理人员”的选项来搜索,如下图:


这样就完成了。
destoon模块自定义字段的添加并让其支持搜索的方法

关键词:
destoon自字义字段
destoon字段添加
destoon自定义搜索
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|destoon采集论坛

GMT+8, 2025-11-23 04:39 , Processed in 0.014811 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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