Making Searches Simple
One sticky point with many websites
is this: they have absolutely terrible search engines. It does
make sense, in a way, as searches are complicated to program
for, and it takes time to write or implement a search engine
on your site. Still, if you do search badly, it's worse than not doing
it at all.
Stick to Conventions.
If you look at the established search engines - Google, Yahoo,
MSN and the rest - you'll see that they follow a clear set of conventions
when it comes to displaying search results. The titles of pages are
large, underlined blue links, and they're followed by an extract from
or description of the page, and then the page's URL. It looks like
this:
Title of first search result
... here is the text where the keyword was found in the search result.
the keyword will be in bold...
http://www.example.com/articles/123
Search results are ordered most relevant first, and are split
across pages if there are a lot of them. The search box should remain
at the top of the page with a search button, in case the user wants
to edit their search. There should also be an 'advanced search'
link, to help users make more complicated queries to your search engine
(for example, pages that contain one thing but not another, or only
pages in a specific section of the site).
There are many more conventions - study established search engines
in some detail to figure out which ones will be important to you when
you design your search. However much you might feel like it's bad
to just copy the search engines, they all copy each other anyway,
and the reason they do it is that consistent interfaces are a big
aid to usability.
Learning from PageRank.
Google's idea of ranking pages by link popularity (that is,
the number of pages that link to them using a keyword) is a good one,
but lots of people seem to have forgotten it. Why? Well, because it
doesn't work all that well for indexing the whole web, where it's
easily gamed. When you're doing searches across your own website,
though, where you control the content and no-one can try to distort
the link rankings, it's a technique that works much better than counting
the number of times keywords occur in each page. Of course, this assumes
that your site links to other parts of itself well (it should, for
the sake of rankings in the real search engines) and that your site
is reasonably large.
Installing Search Software.
At this point, you'd have a big project on your hands if you decided
to write your site's search engine yourself. It's much better to take
an existing, open source solution written in whatever language your
site runs on, and then adapt it to your own purposes in whatever way
you need to. Good places to look for open source site search software
are sourceforge.net and freshmeat.net,
which both allow you to search by language and sort results by the
popularity of the software.
Outsourcing Search.
Finally, if you don't want to go to too much trouble with your site
search, you might consider outsourcing it altogether: that is, making
your search box send the user to the search results for your site
at an external search engine. More and more sites with outdated
or useless search engines are starting to do this, realising that
they're putting off users by forcing them to use bad search engines.
If you want to offer a Google search for your website, go here:
http://www.google.com/services/websearch.html.
Yahoo and MSN offer similar services, but they're nowhere near as
popular. You should really only consider outsourcing your search as
a last result, as it looks amateurish unless you pay to customise
it with your logo and design, and it may also have the unintentional
result of sending your visitors back out onto the web instead of keeping
them on your site. Still, if you really don't have the time to spare
to make a good search, it can be a useful alternative to have.
|
|