帝国论坛帝国网站管理系统交流区帝国CMS使用交流让7.0的搜索模板也支持动态标签 【本版专题贴子】  
 1/2     1 2 ›› ›|
主题:让7.0的搜索模板也支持动态标签 [加入收藏夹]   

chenqy8887
用户头衔:举人 *

精华贴   :0
发贴数   :212
经验值   :1458
注册时间:2009-04-22
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
让7.0的搜索模板也支持动态标签
原修改过这个文件,但在7.0中已经不适用了,重新修改,测试可用!
<?php
require('../../class/connect.php');
require('../../class/db_sql.php');
require('../../class/functions.php');
require('../../class/t_functions.php');
require('../../data/dbcache/class.php');
require "../".LoadLang("pub/fun.php");
$editor=1;
eCheckCloseMods('search');//关闭模块
$link=db_connect();
$empire=new mysqlquery();
$getvar=$_GET['getvar'];
if(empty($getvar))
{
        $getfrom="history.go(-1)";
}
else
{
        $getfrom="../../../search/";
}
//搜索结果
$searchid=(int)$_GET['searchid'];
if(empty($searchid))
{
        printerror("SearchNotRecord",$getfrom,1);
}
$search_r=$empire->fetch1("select searchid,keyboard,result_num,orderby,myorder,tbname,tempid,andsql,trueclassid from {$dbtbpre}enewssearch where searchid='$searchid'");
if(empty($search_r['searchid'])||InfoIsInTable($search_r[tbname]))
{
        printerror("SearchNotRecord",$getfrom,1);
}
$page=(int)$_GET['page'];
$page=RepPIntvar($page);
$start=0;
$page_line=$public_r['search_pagenum'];//每页显示链接数
$line=$public_r['search_num'];//每页显示记录数
$offset=$page*$line;//总偏移量
$search="&searchid=".$searchid;
$myorder=$search_r[orderby];
if(empty($search_r[myorder]))
{
        $myorder.=" desc";
}
$add=stripSlashes($search_r['andsql']);
$num=$search_r[result_num];
$query="select * from {$dbtbpre}ecms_".$search_r[tbname].($add?' where '.substr($add,5):'');
$query.=" order by ".$myorder." limit $offset,$line";
$sql=$empire->query($query);
$listpage=page1($num,$line,$page_line,$start,$page,$search);

//取得模板
if($search_r['tempid'])
{
        $tempr=$empire->fetch1("select temptext,subnews,listvar,rownum,showdate,modid,subtitle,docode from ".GetTemptb("enewssearchtemp")." where tempid='".$search_r['tempid']."' limit 1");
       
}
elseif(empty($class_r[$search_r[trueclassid]][searchtempid]))
{
        $tempr=$empire->fetch1("select temptext,subnews,listvar,rownum,showdate,modid,subtitle,docode from ".GetTemptb("enewssearchtemp")." where isdefault=1 limit 1");
       
}
else
{
        $tempr=$empire->fetch1("select temptext,subnews,listvar,rownum,showdate,modid,subtitle,docode from ".GetTemptb("enewssearchtemp")." where tempid='".$class_r[$search_r[trueclassid]][searchtempid]."' limit 1");
       
}

$have_class=1;
//页面支持标签
$tempr[temptext]=DtNewsBq('list'.$tempid,$tempr[temptext],0);
//替换公共模板变量

$listtemp=$tempr[temptext];

if($public_r['searchtempvar'])
{
        $listtemp=ReplaceTempvar($listtemp);
}
$search_r[keyboard]=htmlspecialchars($search_r[keyboard]);

$listtemp=str_replace("[!--show.page--]",$listpage,$listtemp);
$listtemp=str_replace("[!--keyboard--]",$search_r[keyboard],$listtemp);
$listtemp=str_replace("[!--ecms.num--]",$num,$listtemp);
$url="<a href='".$public_r[newsurl]."'>".$fun_r['index']."</a>&nbsp;>&nbsp;".$fun_r['adsearch'];
$pagetitle=$fun_r['adsearch']." ".$search_r[keyboard];
$listtemp=ReplaceSvars($listtemp,$url,0,$pagetitle,$pagetitle,$pagetitle,$add,0);
$rownum=$tempr[rownum];
if(empty($rownum))
{
        $rownum=1;
}
$formatdate=$tempr[showdate];
$subnews=$tempr[subnews];
$subtitle=$tempr[subtitle];
$docode=$tempr[docode];
$modid=$tempr[modid];
$listvar=str_replace('[!--news.url--]',$public_r[newsurl],$tempr[listvar]);
//字段
$ret_r=ReturnReplaceListF($tempr[modid]);
//取得列表模板
$list_exp="[!--empirenews.listtemp--]";
$list_r=explode($list_exp,$listtemp);
$listtext=$list_r[1];
$no=$offset+1;
$changerow=1;
while($r=$empire->fetch($sql))
{
        //替换列表变量
        $repvar=ReplaceListVars($no,$listvar,$subnews,$subtitle,$formatdate,$url,$have_class,$r,$ret_r,$docode);
        $listtext=str_replace("<!--list.var".$changerow."-->",$repvar,$listtext);
        $listtext=str_replace($search_r[keyboard],"<font color='red'>$search_r[keyboard]</font>",$listtext);
        $changerow+=1;
        //超过行数
        if($changerow>$rownum)
        {
                $changerow=1;
                $string.=$listtext;
                $listtext=$list_r[1];
        }
        $no++;
}
db_close();
$empire=null;
//多余数据
if($changerow<=$rownum&&$listtext<>$list_r[1])
{
        $string.=$listtext;
}
$string=$list_r[0].$string.$list_r[2];
echo stripSlashes($string);
?>


将此文件放到e/search/result/index.php目录覆盖就OK了




2013-03-02 03:25:02 已设置保密 顶部 回复 引用 报告 编辑 删除

455ax
用户头衔:探花

精华贴   :0
发贴数   :7144
经验值   :19055
注册时间:2007-05-29
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

支持一下




2013-03-02 07:03:45 已设置保密 顶部 回复 引用 报告 编辑 删除

luring
用户头衔:探花

精华贴   :3
发贴数   :2303
经验值   :7177
注册时间:2007-02-12
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 3 楼]




1
2013-03-02 09:52:11 已设置保密 顶部 回复 引用 报告 编辑 删除

mybird
用户头衔:举人

精华贴   :0
发贴数   :204
经验值   :604
注册时间:2011-04-09
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 4 楼]

支持




2013-03-03 07:59:23 已设置保密 顶部 回复 引用 报告 编辑 删除

麦蒂
用户头衔:探花

精华贴   :0
发贴数   :6368
经验值   :17545
注册时间:2009-03-06
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 5 楼]

支持




2013-03-04 08:00:26 已设置保密 顶部 回复 引用 报告 编辑 删除

teafaery
用户头衔:举人

精华贴   :0
发贴数   :119
经验值   :896
注册时间:2009-01-16
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 6 楼]

太感谢楼主了 http://www.zd8.me



如何制作手机网站
2013-03-04 08:21:20 已设置保密 顶部 回复 引用 报告 编辑 删除

icfox
用户头衔:举人

精华贴   :0
发贴数   :109
经验值   :610
注册时间:2008-03-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 7 楼]

NB,支持!




2013-07-16 02:54:54 已设置保密 顶部 回复 引用 报告 编辑 删除

8877
用户头衔:进士

精华贴   :0
发贴数   :1195
经验值   :4216
注册时间:2006-06-15
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 8 楼]

顶一下!




2013-07-16 09:58:10 已设置保密 顶部 回复 引用 报告 编辑 删除

nappan
用户头衔:举人

精华贴   :0
发贴数   :132
经验值   :614
注册时间:2010-03-03
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 9 楼]

感谢分享



路漫漫其修远兮,不如我们去打的!
2013-07-18 22:31:42 已设置保密 顶部 回复 引用 报告 编辑 删除

lghyt
用户头衔:进士

精华贴   :0
发贴数   :937
经验值   :3311
注册时间:2011-07-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 10 楼]

原帖由 chenqy8887 于 2013-03-02 03:25:02 发表
原修改过这个文件,但在7.0中已经不适用了,重新修改,测试可用!
<?php
require('../../class/connect.php');
require(...

俺就是把这个文件覆盖到你说的这里,但是结果却是这个,看来测试不成功啊,俺里面全是灵动,没别的标签,应该符合条件,

上传以下图片:


[该贴被修改 1 次,最后修改时间 2013-10-29 09:02:34 ]


第一次用的cms就是帝国,第二个学会的是phpcms,第三个就是干discuz!第四个就是玩shopNC
2013-10-29 09:01:11 已设置保密 顶部 回复 引用 报告 编辑 删除
 1/2     1 2 ›› ›|

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1