Go to file
Brett Tasker 72bc71a6a1 FIX: #270 - Reset variant state back to original state after processing 2020-01-08 13:09:29 +13:00
_config Update config.yml 2019-05-09 15:41:54 +12:00
bin Remove unused class imports, import docblock reference for Apache_Solr_Response, use strict comparison 2019-05-17 09:51:20 +12:00
conf/solr Enable macrons in search by default 2018-10-23 19:03:02 +13:00
docs Enable macrons in search by default 2018-10-23 19:03:02 +13:00
lang Update translations 2019-05-10 10:05:33 +12:00
src FIX: #270 - Reset variant state back to original state after processing 2020-01-08 13:09:29 +13:00
templates/Layout use a template that iterates results properly 2018-06-08 14:11:33 +01:00
tests Added complex filtering via Criteria/Criterion and Adapters/Writers for Solr. 2018-07-12 13:28:40 +12:00
.editorconfig Added standard editor config 2015-11-19 13:25:25 +13:00
.gitattributes Added standard git attributes 2015-11-19 19:11:54 +13:00
.scrutinizer.yml Update scrutinizer config 2018-03-15 09:52:44 +13:00
.travis.yml Use trusty distro in Travis builds 2019-08-02 15:37:02 +12:00
.upgrade.yml Add Capture classes to upgrade.yml 2017-12-07 09:14:09 +13:00
README.md split querying into its own file 2018-06-20 17:14:50 +01:00
_config.php improve SearchQuery API readability by deprecating functions 2018-05-18 10:15:20 +01:00
changelog.md Update changelog for 2.2.0 2016-05-18 17:20:00 +12:00
code-of-conduct.md Added standard code of conduct 2015-11-21 20:13:42 +13:00
codecov.yml FIX Update Travis configuration for SS4, add phpunit config and necessary composer updates 2017-11-15 09:43:36 +13:00
composer.json remove composer branch alias 2018-10-17 12:21:42 +13:00
license.md Updated license year 2016-01-01 06:45:22 +13:00
phpcs.xml.dist Add different core installer versions to Travis matrix and add own phpcs ruleset 2018-06-15 11:58:06 +12:00
phpunit.xml.dist FIX Update directory structure for PSR-4 compatibility and rename "code" to "src" 2017-11-29 15:13:46 +13:00

README.md

FullTextSearch module

Build Status Scrutinizer Code Quality codecov SilverStripe supported module

Adds support for fulltext search engines like Sphinx and Solr to SilverStripe CMS.

Maintainer Contact

  • Hamish Friedlander <hamish (at) silverstripe (dot) com>

Requirements

  • SilverStripe 4.0+

Note: For SilverStripe 3.x, please use the 2.x release line.

Documentation

For pure Solr docs, check out the Solr 4.10.4 guide.

See the docs for configuration and setup, or for the quick version see the quick start guide.

For details of updates, bugfixes, and features, please see the changelog.

TODO

  • Get rid of includeSubclasses - isn't actually used in practice, makes the codebase uglier, and ClassHierarchy can be used at query time for most of the same use cases

  • Fix field referencing in queries. Should be able to do $query->search('Text', 'Content'), not $query->search('Text', SiteTree::class . '_Content') like you have to do now

    • Make sure that when field exists in multiple classes, searching against bare fields searches all of them

    • Allow searching against specific instances too

  • Make fields restrictable by class in an index - 'SiteTree#Content' to limit fields to a particular class, maybe 'Content->Summary' to allow calling a specific method on the field object to get the text

  • Allow following user relationships (Children.Foo for example)

  • Be clearer about what happens with relationships to stateful objects (e.g. Parent.Foo where Parent is versioned)

  • Improvements to SearchUpdater

    • Make it work properly when in-between objects (the A in A.B.Foo) update

    • Allow user logic to cause triggering reindex of documents when field is user generated

  • Add generic APIs for spell correction, file text extraction and snippet generation