Skip to content
Netgen's extra bits for eZ Platform search
PHP Shell
Branch: master
Clone or download
Latest commit caaca88 Aug 19, 2019

README.md

Extra bits for eZ Platform search

Build Status Read the Docs Downloads Latest stable License

Features

Only a list of features is provided here, see documentation for more details.

  • CustomField sort clause (solr)

    Provides a way to sort directly on Solr field by its name.

  • Pagerfanta adapters providing access to extra information returned by the search engine, like facets, max score and execution time (solr, legacy):

  • A set of User related criteria (legacy):

  • IsFieldEmpty criterion (solr)

    Requires initial reindexing after installation.

  • ObjectStateIdentifier criterion (solr, legacy)

  • SectionIdentifier criterion (solr, legacy)

  • Support for custom Content subdocuments (Solr search engine) (solr)

    Provides a way to index custom subdocuments to Content document and SubdocumentQuery criterion, available in Content search to define grouped conditions for a custom subdocument.

  • SubdocumentField sort clause (solr)

    Provides a way to sort Content by a subdocument field, choosing scoring calculation mode and optionally limiting with SubdocumentQuery criterion.

    Note: This will require Solr 6.6 or higher in order to work correctly with all scoring modes.

  • LocationQuery criterion (solr, legacy)

    Allows grouping of Location criteria so that they apply together on a Location.

  • CustomFieldFacetBuilder facet builder (solr)

    Allows building facets on custom Solr fields.

  • RawFacetBuilder facet builder (solr)

    Exposes Solr's JSON facet API in full.

  • Score sort clause (solr)

    Provides a way to sort Content by score value.

  • Random sort clause (solr)

    Provides a way to sort Content randomly.

  • Indexable implementations for RichText and XmlText (solr)

    These implementations shorten text indexed as keyword to 256 characters, which prevents failures when the field's content is too big for Solr's string field. They can be controlled with semantic configuration (showing defaults):

    netgen_ez_platform_search_extra:
        indexable_field_type:
            ezxmltext:
                enabled: true
                short_text_limit: 256
            ezrichtext:
                enabled: true
                short_text_limit: 256
  • Loading implementation of result extractor (solr)

    Loading result extractor gets it's value objects by loading them from the persistence. This prevents:

    • UnauthorizedException failures because of the missing content/versionread permission when Content is updated and incremented current version number is not yet indexed in Solr
    • NotFoundException failures when Content/Location is deleted and the corresponding document is not yet removed from Solr index

    Usage of loading result extractor can be controlled with semantic configuration (showing defaults):

    netgen_ez_platform_search_extra:
        use_loading_search_result_extractor: true

Installation

To install eZ Platform Search Extra first add it as a dependency to your project:

composer require netgen/ezplatform-search-extra:^1.8

Once the added dependency is installed, activate the bundle in app/AppKernel.php file by adding it to the $bundles array in registerBundles() method, together with other required bundles:

public function registerBundles()
{
    ...

    $bundles[] = new Netgen\Bundle\EzPlatformSearchExtraBundle\NetgenEzPlatformSearchExtraBundle;

    return $bundles;
}
You can’t perform that action at this time.