wns9778.com_威尼斯wns.9778官网

热门关键词: wns9778.com,威尼斯wns.9778官网
wns9778.com > 计算机教程 > phpcms批量提取关键字和内容摘要,便于搜索引擎

原标题:phpcms批量提取关键字和内容摘要,便于搜索引擎

浏览次数:52 时间:2019-07-07

一、打开/phpcms/modules/content/fields/content_input.class.php 在get() 函数中将第一行

   为了避免索引表的searchid 编号与content 的contentid 编号相差太大,最好做下面的一 二 三步

if($data['catid'] == 290){    $this->data = $data;   }else{    $this->data = $data = trim_script($data);   }

   二、后台--生成html---生成内容---生成url   主要是整理下url连接,如果原来连接没有问题,这部跳过

如果想要在内容中添加JS代码可以执行下面操作。

一、从文章标题提取关键字

如果你要指定某栏目可以执行下面的操作:

将两处$data = $this->segment($title.$content);修改为$data = $title.' '.$this->segment($content);

由:

希望对大家有帮助。

即可。

  //这是原来的内容,我注译掉了,原来phpcms 2008 sp4是为了避免分词影响搜索标题,对标题进行了标题全文索引 标题分词索引。
  $data = $this->db->escape($data);
  $this->db->query("INSERT INTO `$this->table`(`type`, `data`) VALUES('$this->type', '$data')");
  $searchid = $this->db->insert_id();
        $this->set_data($searchid, array('title'=>$title, 'content'=>$content, 'url'=>$url));
  return $searchid;
 }


   //同上原理
   $data = $this->db->escape($data);

版权声明:本文为博主原创文章,未经博主允许不得转载。

search表就三个字段,分别是searchid (id号) type(模型) data  (搜索分词所在)

$this->data = $data;

        function update($searchid, $title, $content, $url)
        {
                $data = $this->segment($title.$content);
                $data = $this->db->escape($data);
                $this->db->query("UPDATE `$this->table` SET `type`='$this->type',`data`='$data' WHERE `searchid`='$searchid'");
                if($this->db->affected_rows() == 0) return false;
                $this->set_data($searchid, array('title'=>$title, 'content'=>$content, 'url'=>$url));
                return true;
        }

二、更新缓存

 

当使用PHPCMS V9的时候添加内容是不允许添加JS代码的,出于案例考虑PHPCMS会将所有的内容执行 trim_script 。

     不过我的修改方法与上面不一致,我第一次通过重建索引自动分词时只需要对标题进行分词,内容就不分词了

同理,如果想只在某站点下有效,那么将条件加上:$this->siteid = 1 即可 1为你的ID号

UPDATE `phpcms_content` SET description=REPLACE(description,'ORAC LE','oracle')

改为

版权声明:本文为博主原创文章,未经博主允许不得转载。

$this->data = $data = trim_script($data);

 对分词不满意的可以update 替换,先加where 条件测试无误再替换,

环境:debian 5.4  php 5.2 mysql 5.0 phpcms 2008 sp4

这样的话,search表在发布文章和修改文章的时候就会自动记录下你的“全标题”“关键字”如果作者和来源不为空的话,也会记录下来。

已解决。解决的办法是修改searchincludesearch.class.php 文件中的以下代码:
        function add($title, $content, $url)
        {
                $data = $this->segment($title.$content);
                $data = $this->db->escape($data);
                $this->db->query("INSERT INTO `$this->table`(`type`, `data`) VALUES('$this->type', '$data')");
                $searchid = $this->db->insert_id();
        $this->set_data($searchid, array('title'=>$title, 'content'=>$content, 'url'=>$url));
                return $searchid;
        }

下面是替换语句示例

 update phpcms_wns9778.com,content,phpcms_c_news set  phpcms_content.description=phpcms_c_news.content  wHERE phpcms_content.contentid=phpcms_c_news.contentid and  phpcms_content.contentid=1

  第一步:删除已经生成缓存文件
路径:/search/data/news 
提示:在/search/data/下有许多文件夹的情况,将其全部删除。
第二步:清空phpcms_search数据表
执行SQL语句:truncate phpcms_search;
第三步:更新searchid为0
执行SQL语句:update phpcms_content set searchid='0';
最后一步:更新URL
后台内容管理=》生成HTML=》更新URL

 

本文由wns9778.com发布于计算机教程,转载请注明出处:phpcms批量提取关键字和内容摘要,便于搜索引擎

关键词: wns9778.com

上一篇:基于ASP.NET MVC的热插拔模块式开发框架(OrchardNoC

下一篇:没有了