织梦搜索实现标题完全精准搜索,就是搜索文档标题必须一模一样才有搜索结果。
1、在 /plus/ 新建一个 so.php 文件
02 | require_once( dirname (__FILE__) . "/../include/common.inc.php" ); |
03 | require_once DEDEINC . "/arc.partview.class.php" ; |
06 | ShowMsg( '关键字不能为空!' , '-1' ); |
09 | $row = $dsql->GetOne( "SELECT id FROM `dede__archives` WHERE title = '$title' " ); |
12 | $chRow = $dsql->GetOne( "SELECT c.addtable FROM dede__archives AS a LEFT JOIN dede_channeltype AS c ON a.channel=c.id where a.id='{$row['id']}'" ); |
13 | $addtable = trim($chRow[ 'addtable' ]); |
14 | $result = $dsql->GetOne( "SELECT arc.*,addf.* FROM `dede__archives` arc LEFT JOIN `{$addtable}` addf ON arc.id=addf.aid WHERE arc.arcrank>-1 AND arc.id = '{$row['id']}'" ); |
16 | foreach ($result as $k => $ v ) |
20 | $pv->SetTemplet($cfg_basedir . $cfg_templets_dir . "/" . $cfg_df_style . "/so.htm" ); |
25 | ShowMsg( '没有相关记录!' , '-1' ); |
|
2、添加 so.htm 模板文件
例如 /templets/default/so.htm,代码如下
2 | <p>标题:{dede:field.title /}</p> |
3 | <p>缩略图:{dede:field.litpic /}</p> |
4 | <p>品牌:{dede:field.pinpai /}</p> |
5 | <p>货号:{dede:field.huohao /}</p> |
6 | <p>价格:{dede:field.jiage /}</p> |
7 | <p>内容:{dede:field.body /}</p> |
|
3、前台模板搜索框代码
1 | <form method= "post" action= "{dede:global.cfg_cmspath/}/plus/so.php" > |
3 | <p>标题精准搜索:<input type = "text" name= "title" value= "" /></p> |
4 | <input type = "submit" name= "submit" value= "开始搜索" /> |
|
注意:name="title" 不是 name="q"
上一篇:织梦dede:arclist和dede:list调用body内容的方法
下一篇:织梦arclist调用自定义字段:商品市场价/优惠价