You are here: Home Old redinnovation.com blog Archive 2006 August
Personal tools

Entries For: August 2006

2006-08-21

Lost'n'found

Filed Under:

Custom Search, a new product, radically improves Plone's search functionality

Plone's stock search functionality has several shortcomings

  • Search form doesn't utilize Plone's content model and is based on scripts containing a lot of hard coded location information, making customizing and creating variants difficult.
  • Plone's Smart Folder functionality provides rich search criteria, but doesn't provide easy end user interface to do arbitary queries - searches are static, created by the site manager.
  • The underlaying architechture, Zope's ZCatalog, doesn't support boolean queries or multiple sort keys.
  • According to the research (sorry, Finnish only!) made at University of Jyväskylä, Plone's default search result listing can be confusing. Try it yourself: go to plone.org and type "Eclipse" to the search field. The first hit is a screenshot instead of the tutorial you are probably looking for.
    • Searches don't utilize content type in the ranking, only word counts in the text matter.
    • The results lack location information. If there are similiar titles under many folders, the result will be ever more confusing. A simple use case would be a folder per company department, each folder having "personell" page. One couldn't distinguish pages from each other in the result listing.
A new product, Custom Search,  addresses these problems
  • Search forms are Archetypes based objects, meaning they appear in the navigation tree, they have permissions, etc.
  • Adding new forms and search fields can be done through-the-web easily If you have need very custom code, the search items can be extended using the normal class inheritance and schema magic which is used for the all Plone content types.
  • Numeric, boolean and ranged search indexes are supported. This is useful if your content types have attributes like a price.
  • Custom Search uses AdvancedQuery product by Dieter Mauer as a backend. AdvancedQuery monkey patches ZCatalog to support boolean queries and multiple sort keys.
Here are some screenshot examples what Custom Search can currently do.

For some use cases, Custom Search is already very usable. It still lacks some functionality like batching support (all search are displayed on one page) and adding boolean conditions to the queries.





First post

See if this works

The Earth is calling
Syndication
Atom
RDF
RSS 2.0
Available for work
Need Web/Usability/Python/Plone/Django expert?
Hire us!