PHPackages                             se7enxweb/ezplatform-search-extra - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Search &amp; Filtering](/categories/search)
4. /
5. se7enxweb/ezplatform-search-extra

ActiveEzplatform-bundle[Search &amp; Filtering](/categories/search)

se7enxweb/ezplatform-search-extra
=================================

Netgen's extra bits for eZ Platform search

2.6.1(1mo ago)1181GPL-2.0-or-laterPHPPHP ^7.3 || ^8.0 || ^8.1 || ^8.2 || ^8.3 || ^8.4 || ^8.5

Since Jun 27Pushed 1mo agoCompare

[ Source](https://github.com/se7enxweb/ezplatform-search-extra)[ Packagist](https://packagist.org/packages/se7enxweb/ezplatform-search-extra)[ Fund](https://account.venmo.com/u/se7enxweb)[ Fund](https://cash.app/$7xweb)[ RSS](/packages/se7enxweb-ezplatform-search-extra/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (12)Versions (47)Used By (1)

Netgen's extra bits for eZ Platform search
==========================================

[](#netgens-extra-bits-for-ez-platform-search)

[![Build Status](https://camo.githubusercontent.com/44fc919b363f7a8534ddfe0ac8a6824341928e25a26ea6aebec8bbdd9355c1a3/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f6e657467656e2f657a706c6174666f726d2d7365617263682d65787472612e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.com/netgen/ezplatform-search-extra)[![Read the Docs](https://camo.githubusercontent.com/137413e94cf543cf5b06915b9c89dd5c3b761f9d0061707f5644472a90815396/68747470733a2f2f696d672e736869656c64732e696f2f72656164746865646f63732f7069702e7376673f7374796c653d666c61742d737175617265)](https://netgen-ezplatform-search-extra.readthedocs.io/en/latest/index.html)[![Downloads](https://camo.githubusercontent.com/2661b982d96d56ac3ed47d10f16f90d3e2c09b57971c66b9269dceccc3ba8593/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6e657467656e2f657a706c6174666f726d2d7365617263682d65787472612e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/netgen/ezplatform-search-extra)[![Latest stable](https://camo.githubusercontent.com/6f056c0310c28bf32d4e749ed563e826caf8779f6ada8712cbd1d4c11e89edfd/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f6e657467656e2f657a706c6174666f726d2d7365617263682d65787472612e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/netgen/ezplatform-search-extra)[![eZ](https://camo.githubusercontent.com/01ae286f102684bea3650e5c3b8b837777c967b3e3d53ac60fd5291b84b66072/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f655a253230506c6174666f726d2d254532253839254135253230332e322d6f72616e67652e7376673f7374796c653d666c61742d737175617265)](https://ezplatform.com/)[![License](https://camo.githubusercontent.com/7894c9e24e972bc2aed0d177920007b0930db7c46a338168dabfbbfe5a54aeca/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f6e657467656e2f657a706c6174666f726d2d7365617263682d65787472612e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/netgen/ezplatform-search-extra)

### Other versions

[](#other-versions)

- release compatible with eZ Platform `3.1` is `2.4`
- release compatible with eZ Platform `2.x` is `1.14`

Features
--------

[](#features)

This only lists all implemented features, see the [documentation](https://netgen-ezplatform-search-extra.readthedocs.io)for more details on specific ones.

- [`ContentName`](https://github.com/netgen/ezplatform-search-extra/blob/1.13/lib/API/Values/Content/Query/Criterion/ContentName.php) criterion that works on matched translation's Content name (`solr`, `legacy`)
- [`ContentName`](https://github.com/netgen/ezplatform-search-extra/blob/1.13/lib/API/Values/Content/Query/SortClause/ContentName.php) sort clause that works on matched translation's Content name (`solr`, `legacy`)
- [`ContentId`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/ContentId.php) and [`LocationId`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/LocationId.php) criteria with support for range operators (`solr`, `legacy`)

    Supported operators are: `EQ`, `IN`, `GT`, `GTE`, `LT`, `LTE`, `BETWEEN`.
- [`Visible`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/Visible.php) criterion (`solr`, `legacy`), usable in both Content and Location search. The criterion works on compound visiblity of Content and Location objects: the Content is visible if it's marked as visible; the Location is visible if it's marked as visible, is not hidden by one of its ancestor Locations, and it's Content is visible.
- [Spellcheck suggestions support](https://docs.netgen.io/projects/search-extra/en/latest/reference/spellcheck_suggestions.html) (`solr`)
- [`CustomField`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/SortClause/CustomField.php) 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, aggregations, max score and execution time (`solr`, `legacy`):

    - [`SearchAdapter`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/Core/Pagination/Pagerfanta/SearchAdapter.php) when using `API` search service
    - [`SearchHandlerAdapter`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/Core/Pagination/Pagerfanta/SearchHandlerAdapter.php) when using `SPI` search handler
- A set of User related criteria (`legacy`):

    - [`HasUser`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/HasUser.php) criterion
    - [`UserEmail`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/UserEmail.php) criterion
    - [`UserEnabled`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/UserEnabled.php) criterion
    - [`UserId`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/UserId.php) criterion
    - [`UserLogin`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/UserLogin.php) criterion
- [`IsFieldEmpty`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/IsFieldEmpty.php) criterion (`solr`)

    Requires initial reindexing after installation.
- [`ObjectStateIdentifier`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/ObjectStateIdentifier.php) criterion (`solr`, `legacy`)
- [`SectionIdentifier`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/SectionIdentifier.php) criterion (`solr`, `legacy`)
- Support for custom Content subdocuments (Solr search engine) (`solr`)

    Provides a way to index custom subdocuments to Content document and [`SubdocumentQuery`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/SubdocumentQuery.php)criterion, available in Content search to define grouped conditions for a custom subdocument.
- [`SubdocumentField`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/SortClause/SubdocumentField.php) sort clause (`solr`)

    Provides a way to sort Content by a subdocument field, choosing score 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`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/Criterion/LocationQuery.php) criterion (`solr`, `legacy`)

    Allows grouping of Location criteria so that they apply together on a Location.
- [`CustomFieldFacetBuilder`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/FacetBuilder/CustomFieldFacetBuilder.php) facet builder (`solr`)

    Allows building facets on custom Solr fields.
- [`RawFacetBuilder`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/Core/Search/Solr/API/FacetBuilder/RawFacetBuilder.php) facet builder (`solr`)

    Exposes Solr's [JSON facet API](https://lucene.apache.org/solr/guide/7_4/json-facet-api.html) in full.
- [`Score`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/SortClause/Score.php) sort clause (`solr`)

    Provides a way to sort Content by score value.
- [`Random`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/API/Values/Content/Query/SortClause/Random.php) sort clause (`solr`)

    Provides a way to sort Content randomly.
- Indexable implementations for [`RichText`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/Core/FieldType/RichText/Indexable.php) and [`XmlText`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/Core/FieldType/XmlText/Indexable.php) (`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`](https://github.com/netgen/ezplatform-search-extra/blob/master/lib/Core/Search/Solr/ResultExtractor/LoadingResultExtractor.php) 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
------------

[](#installation)

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

```
composer require netgen/ezplatform-search-extra:^2.5
```

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;
}
```

###  Health Score

56

—

FairBetter than 98% of packages

Maintenance90

Actively maintained with recent releases

Popularity10

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity93

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 89.1% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~67 days

Recently: every ~456 days

Total

43

Last Release

47d ago

Major Versions

1.13.x-dev → 2.3.02020-10-11

1.14.0 → 2.4.02020-10-16

1.14.1 → 2.4.12020-10-20

1.14.x-dev → 2.6.02021-03-26

1.16.0 → 2.6.0.12026-01-27

### Community

Maintainers

![](https://www.gravatar.com/avatar/d2a5049c5b1e7a22c301a2472d09281be35f717da316873861c1a8ae785ada7a?d=identicon)[7x](/maintainers/7x)

---

Top Contributors

[![pspanja](https://avatars.githubusercontent.com/u/1135425?v=4)](https://github.com/pspanja "pspanja (285 commits)")[![emodric](https://avatars.githubusercontent.com/u/362286?v=4)](https://github.com/emodric "emodric (13 commits)")[![wizhippo](https://avatars.githubusercontent.com/u/1456102?v=4)](https://github.com/wizhippo "wizhippo (7 commits)")[![mivancic](https://avatars.githubusercontent.com/u/2465814?v=4)](https://github.com/mivancic "mivancic (7 commits)")[![se7enxweb](https://avatars.githubusercontent.com/u/51429274?v=4)](https://github.com/se7enxweb "se7enxweb (3 commits)")[![bvrbanec](https://avatars.githubusercontent.com/u/1002426?v=4)](https://github.com/bvrbanec "bvrbanec (2 commits)")[![hknezevic](https://avatars.githubusercontent.com/u/2102162?v=4)](https://github.com/hknezevic "hknezevic (2 commits)")[![MarioBlazek](https://avatars.githubusercontent.com/u/6605175?v=4)](https://github.com/MarioBlazek "MarioBlazek (1 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/se7enxweb-ezplatform-search-extra/health.svg)

```
[![Health](https://phpackages.com/badges/se7enxweb-ezplatform-search-extra/health.svg)](https://phpackages.com/packages/se7enxweb-ezplatform-search-extra)
```

###  Alternatives

[ruflin/elastica

Elasticsearch Client

2.3k50.4M203](/packages/ruflin-elastica)[opensearch-project/opensearch-php

PHP Client for OpenSearch

15024.3M65](/packages/opensearch-project-opensearch-php)[mailerlite/laravel-elasticsearch

An easy way to use the official PHP ElasticSearch client in your Laravel applications.

934529.3k2](/packages/mailerlite-laravel-elasticsearch)[massive/search-bundle

Massive Search Bundle

721.4M13](/packages/massive-search-bundle)[outl1ne/nova-multiselect-filter

Multiselect filter for Laravel Nova.

45802.7k3](/packages/outl1ne-nova-multiselect-filter)[handcraftedinthealps/zendsearch

a general purpose text search engine written entirely in PHP 5

39921.0k35](/packages/handcraftedinthealps-zendsearch)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
