快速搜索变高级搜索,快速搜索结果准确率提高

在MAGENTO的快速搜索中往往得不到好的结果,要嘛是查询不到产品,要嘛是所有产品都列出来,不像高级搜索结果那样理想。 有没有把快速搜索效率提高到高级搜索那个水平呢,可以按下面方法做:

  • Do a full DB backup (just in case) (以下操作万一出现问题了,能够还原,最好第一步就是备份数据库及要目录下的APP文件夹。)
  • Replace “OR” with “AND” app/code/core/Mage/CatalogSearch/Model/Resource/Fulltext.php at line 331 and 355. (修改此处文件的这二行, OR 改为 AND,注意大小写)

    • model rewrite through our custom module (more preferable)
    • placing the app/code/core/Mage/CatalogSearch/Model/Resource/Fulltext.php into app/code/local/Mage/CatalogSearch/Model/Resource/Fulltext.php (faster approach, less preferable) (复制此处文件到这个文件夹)
  • Go into database then run: (进入MYSQL数据库,运行以下SQL语句)

    UPDATE catalog_eav_attribute SET is_searchable = 0;
     

    This will set all product attributes to “Use in Quick Search” => NO.

  • Go into database then run:(进入MYSQL数据库,运行以下SQL语句)

    UPDATE catalog_eav_attribute SET is_searchable = 1 WHERE attribute_id = (SELECT attribute_id FROM eav_attribute WHERE attribute_code = "name" AND entity_type_id = (SELECT entity_type_id FROM eav_entity_type WHERE entity_type_code = "catalog_product"));

    This will set only the “name” attribute to “Use in Quick Search” => YES, which is sort of the whole point of this article, having one or minimal set of searchable attributes to get more precise result set.

  • Go into database then run:(进入MYSQL数据库,运行以下SQL语句,此命令会删除以前建好的搜索条件/search terms,也可以不进行删除)

    DELETE FROM catalogsearch_query; DELETE FROM catalogsearch_fulltext;

    This will clear all previously built search query.

  • Go into Magento admin, then do a full reindex (actually only Catalog Search Index is relevant for this). (重建索行)

You can easily make an extension for switching Magento between its OR and your AND statement, have it exposed as configuration value under System > Configuration > Catalog > Catalog > Catalog Search > OR/AND.(此处可以修改搜索条件为OR还是AND,也就是LIKE/FULLTXT,试试会有不同结果)

Hope this helps.

时间: 2024-10-13 23:53:12

快速搜索变高级搜索,快速搜索结果准确率提高的相关文章

Elasticsearch 顶尖高手(5)--快速入门案例实战:多种搜索方式(二)

1.query string search GET /ecommerce/product/_search took:耗费了几毫秒 timeout:是否超时 _shards:数据拆成了5个分片,所以对于搜索请求,会打到所有的primary shard(或者是它的某个relica shard也可以) hist.total:查询结果的数量,4个total max_score:score的含义,就是document对于一个search的相关度的匹配分数,越相关,就越匹配,分数也越高 hits.hits:

高级的Google搜索技巧你知道有哪些

前言:多数人在使用Google搜索的过程是非常低效和无谓的,如果你只是输入几个关键词,然后按搜索按钮,你将是那些无法得到Google全部信息的用户,在这篇文章中,Google搜索专家迈克尔.米勒将向您展示如何更智能.更高效地进行Google的系列搜索. Google是一个非常精密成熟的搜索引擎,但大多数的用户都没有能完全地利用到它的能力.一般人就是在Google的搜索框中输入一两个关键字,然后点击"搜索"按钮,等着Google显示出它第一页的搜索结果.这是一个相当简单模式匹配算法的搜索

ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第三章:搜索、高级过滤和视图模型

在这一章中,我们首先添加一个搜索产品的模块以增强站点的功能,然后使用视图模型而不是ViewBag向视图传递复杂数据. 注意:如果你想按照本章的代码编写示例,你必须完成第二章或者直接从www.apress.com下载第二章的源代码. 3.1 添加产品搜索 为了执行产品搜索,我们将添加一些功能使其能够按照产品名称.描述和分类进行搜索,从而让用户有一个更好的选择来查找相关结果. 之所以将分类也包含在内,是因为如果用户输入的是"clothes",而不是一件特定的衣服,那么所有的衣服都会被搜索到

Qt高级——QMake快速入门

Qt高级--QMake快速入门 一.QMake简介 qmake是Trolltech公司创建的用来为不同的平台和编译器书写Makefile的工具.qmake是一个用来简化在不同平台间开发工程的构建过程的工具.qmake会自动生成MakeFile文件,可以用于任何软件项目中,无论是否由Qt编写.qmake会注意所有的编译器和平台的依赖性,开发者只需关注自己的代码.qmake作为Qt库和Qt所提供的工具的主要连编工具,可以自动的包含moc和uic的连编规则. 二.QMake入门教程 1.创建一个工程

全文搜索基本原理(倒排索引、搜索结果排序)

总结:全文搜索可以认为是搜索引擎最重要的功能,很多系统(如Luence)也支持全文搜索.全文搜索背后涉及的最重要的原理有两个:倒排索引.搜索结果排序 1.倒排索引: 给定若干搜索词 {Ti},可以根据倒排索引快速搜得相关的文档 {Di}. 2.搜索结果排序(文档排序),主要思想是先找出搜索词扮重要作用的文档(定评价标准),接着通过比较作用的大小来排序(通过评价标准评价).分两步: 2.1.找出各搜索词在各搜得的文档内的权重Wtd,从而得到搜得的每个文档的搜索词权重向量 2.2.将各搜索词也看做一

sublime搜索和替换-单文件搜索

Searching To open the search panel for the active file, press Ctrl + F. Someoptions and actions available through this panel can be controlled from thekeyboard: Toggle Regular Expressions Alt + R Toggle Case Sensitivity Alt + C Toggle Exact Match Alt

sublime搜索和替换--多文件搜索替换

Search and Replace - Multiple Files Searching To open the search panel for files, press Ctrl + Shift + F. You can use thekeyboard to control some search panel options and search actions: Toggle Regular Expressions Alt + R Toggle Case Sensitivity Alt

第四章 搜索(深度、广度搜索、全排列、走迷宫、再解炸弹人、宝岛探险、水管工游戏)

一.深度优先搜索DFS 深度优先搜索DFS的关键思想是:当下应该怎么做(每个方法都试一遍),这一步解决后,进入下一步,下一步的解决方法和这一步的解决方法是一样的 DFS的基本模型 void dfs(int step) { 判断边界 尝试每一种可能  for(i=1;i<=n;i++) { 继续下一步 dfs(step+1) } 返回 } 1.1全排列 1 //输入一个数n 2 //输出1-n的全排列 3 #include <stdio.h> 4 int n, book[10], a[10

python使用get在百度搜索并保存第一页搜索结果

python使用get在百度搜索并保存第一页搜索结果 作者:vpoet 日期:大约在夏季 注:随意copy,不用在意我的感受 #coding:utf-8 import urllib import urllib2 import re """ 使用GET在百度搜索引擎上查询 此例演示如何生成GET串,并进行请求. """ if __name__=="__main__": url = "http://www.baidu.c