帝国CMS的搜索根据不同的数据表进行搜索由于数据表结构不同,那么想呈现的搜索结果页面显示不同的字段值如何来实现呢?
比如我有个网站珠宝,里面有资讯/钻石/翡翠,那么资讯是独立在一张数据表phone_ecms_news,钻石是独立一张数据表phone_ecms_zuanshi,翡翠是独立一张数据表phone_ecms_feicui。要实现用户选择资讯搜索,使用搜索模板1,而用户选择搜索钻石或者翡翠自定使用搜索模板2,使用下面一句代码自动实现。
<form class="header-search-form" method="post" name="searchform" id="searchform" action="[!--news.url--]e/search/index.php">
<div class="header-select">
<select class="header-select-inner" id="soselect" name="tbname"
onchange="if(this.value=='news'){document.searchform.tempid.value=1;}else{document.searchform.tempid.value=2;}">
<option selected value="zuanshi">钻饰</option>
<option value="feicui">翡翠</option>
<option value="caibao">彩宝</option>
<option value="zhenzhu">珍珠</option>
<option value="hongbaoshi">红宝石</option>
<option value="lanbaoshi">蓝宝石</option>
<option value="news">资讯</option>
</select>
</div>
<div class="header-searchbox">
<input type="text" placeholder="输入要搜索的内容" name="keyboard" class="header-searchbox-input">
<input type="hidden" name="show" value="title" />
<input type="hidden" name="tempid" value="1" />
<button type="submit" class="header-searchbox-button">
<i class="fa fa-search"></i>
</button>
</div>
</form>
上面红色处代码是核心,根据你选择的搜索内容,自动选择相应的搜索结果模板。