帝国CMS7.5基于es(Elasticsearch)7.x的全文搜索插件

帝国CMS7.5基于es(Elasticsearch)7.x的全文搜索插件 - GXECMS博客

 一、插件演示地址

后台演示地址:https://ecms.gxecms.cf/e/admin/index.php

用户名:demo

密码:demo

前台演示页面:https://ecms.gxecms.cf/e/extend/elasticsearch/

插件购买请联系:

联系QQ:770430296

微信:tiger024062

二、关于本插件的一些说明:

1、我们的全文搜索插件基于帝国CMS7.5以及es(Elasticsearch)7.x版本开发,安装好ik分词插件,请明确您的生产环境和我们一致。

2、插件原则上不修改CMS系统文件,但是如果后台需要增删改查的时候自动同步数据的话需要修改文件,请自行斟酌。

3、插件可实现下面列出的功能:

3-1、索引数据按不同模型分别建立索引库,不同模型可单独设置索引字段以及索引类型,不同模型可以单独设置不同的索引服务器。

3-2、如果站点已经存在数据,建立索引之后可以按模型导入已存在的数据,如果对索引不满意也可以删除索引重建索引。

3-3、导入数据之后可以在后台查看简单的索引数据、同时我们也提供一个简单的前台页面供大家测试。

后台查看索引数据

前台搜索体验

三、插件安装说明

1、解压后将elasticsearch文件夹放到/e/extend/目录,完整路径是/e/extend/elasticsearch/ 

2、后台->系统设置->扩展菜单-》管理菜单 添加 我的插件 分类 

3、在我的插件分类-》添加菜单 

菜单名称                              链接地址 

Elasticsearch全文搜索             /e/extend/elasticsearch/admin/index.php           金刚模式链接

四、需要增删改查操作同步更新索引数据的请按下面步骤修改/e/class/hinfofun.php文件,此步骤是可选的,如果没有修改过/e/class/hinfofun.php文件,可以使用我们提供额文件覆盖。

1、查找printerror("AddNewsSuccess","AddNews.php?enews=AddNews&ecmsnfrom=$add[ecmsnfrom]&bclassid=$add[bclassid]&classid=$add[classid]".$addecmscheck.hReturnEcmsHashStrHref2(0));,大概在377行,在这代码上面添加如下代码

PHP

/** elasticsearch全文搜索代码开始 */
require_once __DIR__.'/../extend/elasticsearch/include/CustomSearch.php';
$mid=$class_r[$add['classid']]['modid'];
$obj = new CustomSearch($mid);
$add['id']=$id;
$add['newstime']=$newstime;
$obj->document_index($add);
/** elasticsearch全文搜索代码结束 */

2.查找printerror("EditNewsSuccess",$ecmsfrom.$addecmscheck);,大概在678行,在这代码上面添加如下代码

PHP

/** elasticsearch全文搜索代码开始 */
require_once __DIR__.'/../extend/elasticsearch/include/CustomSearch.php';
$mid=$class_r[$add['classid']]['modid'];
$obj = new CustomSearch($mid);
$add['newstime']=strtotime($add['newstime']);
$obj->document_update($add);
/** elasticsearch全文搜索代码结束 */

3、查找printerror("EditNewsSuccess",$closeurl,8);,大概在878行,在这代码上面添加如下代码

PHP

/** elasticsearch全文搜索代码开始 */
require_once __DIR__.'/../extend/elasticsearch/include/CustomSearch.php';
$mid=$class_r[$add['classid']]['modid'];
$obj = new CustomSearch($mid);
$add['newstime']=strtotime($add['newstime']);
$obj->document_update($add);
/** elasticsearch全文搜索代码结束 */

4、查找printerror("DelNewsSuccess",$returl);,大概在1010行,在这代码上面添加如下代码

PHP

/** elasticsearch全文搜索代码开始 */
require_once __DIR__.'/../extend/elasticsearch/include/CustomSearch.php';
$mid=$class_r[$classid]['modid'];
$obj = new CustomSearch($mid);
$obj->document_delete($id,$classid);
/** elasticsearch全文搜索代码结束 */

5、查找if($doselfinfo['doselfinfo']&&($r[userid]<>$userid||$r[ismember])),大概在行,在这代码上面添加如下代码

PHP

/** elasticsearch全文搜索代码开始 */
$esclass[$i]=intval($r['classid']);
/** elasticsearch全文搜索代码结束 */

6、查找printerror("DelNewsAllSuccess",EcmsGetReturnUrl());,大概在1142行,在这代码上面添加如下代码

PHP

/** elasticsearch全文搜索代码开始 */
require_once __DIR__.'/../extend/elasticsearch/include/CustomSearch.php';
$mid=$class_r[$classid]['modid'];
$obj = new CustomSearch($mid);
for($i=0;$i<count($id);$i++)
{
    $obj->document_delete($id[$i],$esclass[$i]);
}
/** elasticsearch全文搜索代码结束 */
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
----------------------------------------------------------------------------- 插件名称:帝国CMS-前台定时执行刷新任务插件 插件作者:帝国CMS官方 插件介绍:帝国CMS的前台定时执行刷新任务插件,以及可自动执行信息的定时上下线操作,可替代需要开着后台才会执行刷新任务。 官方网站:http://www.phome.net ---------------------------------------------------------------------------- 想到即可做到 - 帝国CMS ----------------------------------------------------------------------------- ******************** 安装插件 ******************** 1、将“upload”目录下的文件上传至帝国CMS系统目录; 2、插件安装完毕。 ******************** 卸载插件 ******************** 1、删除 /e/extend/DoTimeRepage/ 目录; 2、插件卸载完毕。 ******************** 插件使用 ******************** 1、在经常被访问到的页面(比如:首页)最底部加上如下代码即可:(两种方式选其一) (1)、JS调用方式: [removed][removed]   (2)、框架调用方式: <IFRAME frameBorder="0" width="0" height="0" marginWidth="0" marginHeight="0" id="dorepage" name="dorepage" scrolling="no" src="[!--news.url--]e/extend/DoTimeRepage/"></IFRAME> 2、生成相应页面。 (刷新任务增加:后台>“系统”>“计划任务”>“管理刷新任务”。信息定时上下线:增加信息时选项设置里可以设置定时发布。) ******************** 插件目录说明 ******************** /e/extend/DoTimeRepage/ 前台定时执行刷新任务插件目录 └index.php 执行刷新任务程序文件 ******************** 帝国CMS插件扩展教程 ******************** 以上是我们提供的插件分享,同时希望您以后也可以开发出更好的插件与大家分享。帝国CMS的发展离不开大家的支持。 帝国CMS插件扩展手册可访问:http://www.phome.net/doc/manual/extend/ [官方插件]帝国CMS-前台定时执行刷新任务插件下载 本插件适用于帝国CMS以下版本。同时也是给大家制作帝国CMS插件提供一种格式范例,期待大家制作更多的插件。 本插件适用于帝国CMS的版本如下:(支持各编码版本) EmpireCMS 7.5 EmpireCMS 7.2 EmpireCMS 7.0 EmpireCMS 6.6 本插件最后更新时间为:2018-03-21 ----------------------------------------------------------------------------- 插件名称:帝国CMS-前台定时执行刷新任务插件 插件作者:帝国CMS官方 插件介绍:帝国CMS的前台定时执行刷新任务插件,以及可自动执行信息的定时上下线操作,可替代需要开着后台才会执行刷新任务。 官方网站:http://www.phome.net ----------------------------------------------------------------------------- 想到即可做到 - 帝国CMS ----------------------------------------------------------------------------- ******************** 安装插件 ******************** 1、将“upload”目录下的文件上传至帝国CMS系统目录; 2、插件安装完毕。 ******************** 卸载插件 ******************** 1、删除 /e/extend/DoTimeRepage/ 目录; 2、插件卸载完毕。 ******************** 插件使用 ******************** 1、在经常被访问到的页面(比如:首页)最底部加上如下代码即可:(两种方式选其一) (1)、JS调用方式: [removed][removed]   (2)、框架调用方式: <IFRAME frameBorder="0" width="0" height="0" marginWidth="0" marginHeight="0" id="dorepage" name="dorepage" scrolling="no" src="[!--news.url--]e/extend/DoTimeRepage/"></IFRAME> 2、生成相应页面。 (刷新任务增加:后台>“系统”>“计划任务”>“管理刷新任务”。信息定时上下线:增加信息时选项设置里可以设置定时发布。) ******************** 插件目录说明 ******************** /e/extend/DoTimeRepage/ 前台定时执行刷新任务插件目录 └index.php 执行刷新任务程序文件 ******************** 帝国CMS插件扩展教程 ******************** 以上是我们提供的插件分享,同时希望您以后也可以开发出更好的插件与大家分享。帝国CMS的发展离不开大家的支持。 帝国CMS插件扩展手册可访问:http://www.phome.net/doc/manual/extend/

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值