/[drupal]/contributions/modules/faceted_search/README.txt
ViewVC logotype

Contents of /contributions/modules/faceted_search/README.txt

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.49 - (show annotations) (download)
Thu May 7 00:41:22 2009 UTC (6 months, 3 weeks ago) by davidlesieur
Branch: MAIN
CVS Tags: HEAD
Changes since 1.48: +8 -3 lines
File MIME type: text/plain
Ported Publishing Options Facets to Drupal 6.
1 $Id: README.txt,v 1.48 2009/05/05 01:29:28 davidlesieur Exp $
2
3 README file for the Faceted Search Drupal module.
4
5
6 Description
7 ***********
8
9 The Faceted Search module provides a search API and a search interface for
10 allowing users to browse content in such a way that they can rapidly get
11 acquainted with the scope and nature of the content, and never feel lost in the
12 data. More than a search interface, this is an information navigation and
13 discovery tool.
14
15 The interface exposes metadata in such a way that users can build their queries
16 as they go, refining or expanding the current query, with results automatically
17 reflecting the current query. This interface also combines free-text search,
18 fully leveraging Drupal's search engine. It avoids complex search forms, and
19 never offers facets that would lead to empty result sets.
20
21 The most obvious metadata for faceted searches is provided by Drupal's taxonomy
22 module. However, Faceted Search's API allows developers to expose other
23 metadata, therefore providing more more facets to users for browsing content.
24
25 Any of the following cases might prompt you to use Faceted Search:
26
27 - Users need to filter content using multiple taxonomy terms at the same time.
28
29 - Users want to combine text searches, taxonomy term filtering, and other search
30 criteria.
31
32 - Users don't know precisely what they can find on your site, or what to search
33 for.
34
35 - You want to hint users at related content they might not have thought of
36 looking for, but that could be of interest to them.
37
38 - You want to clearly show users what subject areas are the most comprehensive
39 on your site.
40
41 - You are trying to discover relationships or trends between contents.
42
43 - Your site has too much content for it to be displayed through fixed
44 navigational structures, but you still want it to be navigable.
45
46 - You want to use a faceted classification
47 [http://en.wikipedia.org/wiki/Faceted_classification] because a single
48 taxonomic order or a single folksonomy is not suitable or sufficient for your
49 content.
50
51 - Users often get empty result sets when searching your site.
52
53 - You think that "advanced" search forms are not fun to use.
54
55
56 The package
57 ***********
58
59 Faceted Search is in fact a bundle of modules.
60
61 - Faceted Search: Provides the search framework and API.
62
63 - Faceted Search UI: Provides the search user interface.
64
65 - Faceted Search Views: Allows to use Views to display the search results.
66
67 - Author Facet: Allows users to refine the current search based on content
68 author.
69
70 - Content Type Facet: Allows users to refine the current search based on content
71 type.
72
73 - Date Authored Facet: Allows users to refine the current search based on
74 content creation date.
75
76 - Taxonomy Facets: Allows users to search content through taxonomy. Any
77 vocabulary can become a facet that can be used to refine the current search.
78
79 - Field Keyword Filter: Allows to perform keyword searches restricted by field
80 (requires the Field Indexer module).
81
82 - Publishing Options Facets: Allows users to refine the current search based on
83 content publishing options (sticky, published, promoted to front page,
84 moderated). This is mostly useful in search environments built specifically
85 for site editors.
86
87 - Date Facets Format: Provides formatting options for date-based facets.
88
89 Hopefully, many more facets will be developed. The API is meant to make it easy
90 to implement new facets.
91
92
93 Caution
94 *******
95
96 Faceted Search is database-intensive. If your server can barely keep up with
97 your traffic, this package will make things worst. Make sure to benchmark
98 performance before deploying this system on a busy site or on a site with many
99 thousand nodes (more info: http://drupal.org/node/347952).
100
101
102 Requirements
103 ************
104
105 - Drupal 6.x (http://drupal.org/project/drupal).
106
107 - MySQL 4.1 (or later version).
108
109 - PHP 5.1 (or later version).
110
111
112 Recommended modules
113 *******************
114
115 - CCK Facets (http://drupal.org/project/cck_facets)
116 Exposes Content Construction Kit (CCK) (http://drupal.org/project/cck) fields
117 as facets.
118
119 - Organic Group Facets (http://drupal.org/project/og_facets)
120 Exposes organic groups (http://drupal.org/project/og) as facets.
121
122 - Views (http://drupal.org/project/views): In combination with the Faceted
123 Search Views module, the Views module can give you tremendous flexibility for
124 displaying Faceted Search's results, and even for performing additional
125 filtering of the search results. See the "Views integration" topic below for
126 more details.
127
128 - Field Indexer (http://drupal.org/project/field_indexer): The Field Indexer
129 module indexes field data into Drupal's search index. Faceted Search's Field
130 Keyword Filter module relies on this data to let users perform keyword
131 searches restricted by field.
132
133 - jQuery Update (http://drupal.org/project/jquery_update): If you wish to use
134 Faceted Search UI's tooltips feature (for showing subcategories when hovering
135 over a category in the guided search), it is strongly recommended to install
136 the jQuery Update module. Make sure to read that module's installation
137 instructions. If you don't use the tooltips feature, Faceted Search UI won't
138 use jQuery at all, so in that case you would not need jQuery Update.
139
140 - Taxonomy hide (http://drupal.org/project/taxonomy_hide): If you use Faceted
141 Search UI's Related Categories block, you might want to remove Drupal's
142 default terms listing when viewing a node. You could do that from your site's
143 theme, but another way could be to use the Taxonomy hide module.
144
145
146 Known incompatibilities
147 ***********************
148
149 - PostgreSQL: PostgreSQL has not actually been tested at this point. Also, the
150 Date Authored Facet module uses some MySQL-specific functions. Feel free to
151 share patches to support PostgreSQL (or any other database). :-)
152 See http://drupal.org/node/230471 for updates, and remember that you can help
153 make PostgreSQL support happen!
154
155
156 Installation
157 ************
158
159 1. When using MySQL, in addition to the database permissions already required by
160 Drupal, you will also need to grant your database user the LOCK TABLES and
161 the CREATE TEMPORARY TABLES permissions. To grant those permissions, you need
162 to login to your database:
163
164 mysql -u username -p
165
166 You will be asked for the 'username' database password. Then, at the MySQL
167 prompt, enter the following command:
168
169 GRANT LOCK TABLES, CREATE TEMPORARY TABLES
170 ON databasename.*
171 TO 'username'@'localhost';
172
173 where
174
175 'databasename' is the name of your database
176 'username@localhost' is the username of your MySQL account
177
178 Note: Unless your database user has the privileges listed above, you will not
179 be able to have Faceted Search work properly.
180
181 If successful, MySQL will reply with:
182
183 Query OK, 0 rows affected
184
185 Then enter the following command:
186
187 quit;
188
189 2. Extract the 'faceted_search' module directory, including all its
190 subdirectories, into your Drupal modules directory.
191
192 3. Go to the Administer > Site building > Modules page, and enable the following
193 modules:
194
195 - Faceted Search
196 - Faceted Search UI
197 - At least one of the following modules (which are provided with Faceted
198 Search). Technically, you could use Faceted Search without any of these,
199 but there would not be much benefit over Drupal's standard search:
200 - Author Facet
201 - Content Type Facet
202 - Date Authored Facet
203 - Taxonomy Facets
204 - Field Keyword Filter
205 - Search (Drupal core module)
206 - Taxonomy (Drupal core module -- only needed if you intend to use Taxonomy Facets)
207
208 4. Go to the Administer > Site configuration > Faceted Search page, and click
209 the Add Environment tab.
210
211 5. Define a faceted search environment by filling the "Add a faceted search
212 environment" form. Hopefully it is self-explanatory enough, but don't be
213 afraid to experiment. You can always change any of the settings later.
214
215 Click Save to save the new environment. This takes you back to the
216 Administer > Site configuration > Faceted Search page.
217
218 6. Go to the Administer > Site building > Blocks page, and enable the following
219 blocks (where my_search is the name of the faceted search environment you
220 have just created):
221
222 - my_search / Current search
223 - my_search / Keyword search
224 - my_search / Guided search
225 - my_search / Related categories
226 - my_search / Sort options
227
228 Use Weight to order the blocks. Having the Current search block located above
229 the Keyword search and Guided search blocks is generally most intuitive for
230 users.
231
232 When using multiple faceted search environments, you'll want to configure the
233 block visibility to avoid showing multiple Keyword search or Guided search
234 blocks at the same time. The most common setting is to have those blocks
235 visible only on your search environment's base path.
236
237 To do so, in Administer > Site building > Blocks, click Configure next to the
238 Keyword search or Guided search block whose visibility is to be adjusted.
239 Select "Show on every page except the listed pages", then enter the following
240 paths in the Pages field:
241
242 base_path
243 base_path/*
244
245 ... where "base_path" should be replaced with your search environment's
246 actual base path.
247
248 7. Go to the Administer > User management > Access control page, and grant the
249 "use faceted search" permission to the roles you intend to give access to
250 faceted search.
251
252
253 Views integration
254 *****************
255
256 With the Faceted Search Views module, you may use the Views module to display
257 and further filter search results.
258
259 This system replaces the results page with an embedded view that gets passed the
260 current search environment as an argument. That argument gets processed by
261 Faceted Search Views itself through Views' hook_views_query_alter(). You don't
262 need to configure any particular arguments in your view.
263
264 The main requirements for a view to be eligible for use with Faceted Search are:
265
266 - Must be a Node view.
267 - Must use a pager.
268 - Must be enabled.
269
270 To use a view to display search results, go to Administer > Site configuration >
271 Faceted search, edit your faceted search environment, then select the desired
272 view in the "Display style" field of the "Results page" section.
273
274
275 Known limitations:
276
277 - Only a view's default display can be used (other displays are ignored).
278 - The view cannot use exposed filters or arguments.
279 - The view's "Title" and "Empty text" settings are ignored.
280 - If the view is set to have an unlimited number of items per page, instead of
281 having no limit the system's default limit will be used (per Administer >
282 Content management > Post settings > Number of posts on main page).
283
284
285 Known issues:
286
287 - If your site is using table prefixing, you will need to tell Drupal not to
288 prefix temporary tables needed by Faceted Search Views. In settings.php, you
289 need something like the following:
290
291 $db_prefix = array(
292 'default' => '[your_default_prefix]_',
293 'temp_faceted_search_results_[env_id]' => '',
294 );
295
296 You will need as many 'temp_faceted_search_results_[env_id]' entries as there
297 are faceted search environments (env_id is the numeric identifier for the
298 faceted search environment, to be specified without the brackets). You can
299 find out the env_id by editing an environment and looking at its administration
300 URL, which has a path in the form 'admin/settings/faceted_search/[env_id]'.
301
302 Reference: http://drupal.org/node/227634#comment-864171.
303
304
305 Multilanguage support
306 *********************
307
308 Multilanguage support in Faceted Search relies on the Internationalization
309 module (http://drupal.org/project/i18n).
310
311 With Taxonomy Facets, if a vocabulary uses the 'Localize terms' translation
312 mode, then the system will display the localized version of the vocabulary's
313 name and its term names for the current language.
314
315
316 Upgrading from Drupal 5.x
317 *************************
318
319 Before upgrading your site and Faceted Search from Drupal 5 to Drupal 6, make
320 sure that your site is using the latest version of Faceted Search for Drupal
321 5.x. If this is not the case, then you will have to perform this update as a
322 separate step *before* updating to Drupal 6.
323
324 Note that Faceted Search Views for Drupal 6 no longer needs an argument (which
325 was called "Faceted Search: Environment ID") to be added to your views. After
326 the upgrade to Drupal 6, you will have to remove any remnants of that argument
327 from your views.
328
329
330 Support
331 *******
332
333 For support requests, bug reports, and feature requests, please use Faceted
334 Search's issue queue on http://drupal.org/project/issues/faceted_search.
335
336 Please DO NOT send bug reports through e-mail or personal contact forms, use the
337 aforementioned issue queue instead.
338
339 For general discussions about Faceted Search (or other Drupal search solutions),
340 you are invited to join the Search group on http://groups.drupal.org/node/4102.
341
342
343 Credits
344 *******
345
346 - Project initiated by David Lesieur (http://davidlesieur.com,
347 http://drupal.org/user/17157).
348
349 - Sponsored in part by Laboratoire NT2 (http://www.labo-nt2.uqam.ca), Eyos BV
350 (http://www.eyos.nl), and CAIS Institute (http://caisinstitute.org).
351
352 - The superb Flamenco search interface (http://flamenco.berkeley.edu) has
353 provided much inspiration for this project.

  ViewVC Help
Powered by ViewVC 1.1.2