Better Magento Search Results, Relevancy

Ripped from http://stackoverflow.com/questions/1953715/magento-search-not-returning-... :

Our site, www.wearport.com (sorry - I'm not trying to post this for links stuffing/ad'ing! It's necessary for this question), uses search for users to find products in our catalog. We use the search widget in the admin to gauge how successful users are with searching for products. "Missed searches" are revised with synonyms and redirects as they are identified.
The issue is that many of the nominal searches don't work correctly. By "nominal" I mean terms that are prominent in the product - title, description, etc. If you search "fleece" it brings up sweatshirts and fleece, but the fleece is item 9 instead of
I know that more sophisticated indexing will be available in later releases, but I would think that this should work correctly OOTB.
Do I need to do further configuration of code and/or database?

Magento Search, by default, is pretty terrible.
Two things that help.
1. In the backend, you can choose 'fulltext' or 'like' as search types. I've found 'like' to return much more relevant results than 'fulltext'.
2. This one's great: by default, all sorts in magento return results in ascending order. Search are returned by relevance. So you get them - that's right - in order from least to most relevant.
In your template, in the /catalogsearch/form.mini.phtml file, Within the

tag, add the following.

You'll see a marked improvement.

Just an update to part two of Laizer's answer. You can also set the default direction for search results in the xml layout. Add the following to /app/design/frontend/default/default/layout/catalogsearch.xml

asc
relevance

Between the following:

...

By default Magento gives the same weight to all attributes that you let it search. If you are allow search of the description, this can produce many irrelevant results. If you simply disable searching the description, you can incorrectly limit results.
We've successfully given precedence to the title in search results so that if terms appear in the title, that's the first result. Then other results that may match the description follow. We're in the process of turning this into a module and are currently collecting feedback from store owners about bad search results: http://www.rocketweb.com/improving-magento-search-part-2.html ... if you optionally post your name and email on that form we'll let you know when the extension is live.
Depending on your catalog, another non-magento thing to consider is disabling the stop words file in mysql and allowing 3 character searches by adding the following to your mysql config file:
ft_min_word_len = 3
ft_stopword_file = ""

Tags: