PHPackages                             blackbit\_digital\_commerce/pimcore-better-search - 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. blackbit\_digital\_commerce/pimcore-better-search

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

blackbit\_digital\_commerce/pimcore-better-search
=================================================

Drop-in replacement for Pimcore backend search

00

Since Jun 29Pushed 3y ago1 watchersCompare

[ Source](https://github.com/BlackbitDigitalCommerce/pimcore-better-search)[ Packagist](https://packagist.org/packages/blackbit_digital_commerce/pimcore-better-search)[ RSS](/packages/blackbit-digital-commerce-pimcore-better-search/feed)WikiDiscussions master Synced today

READMEChangelogDependenciesVersions (1)Used By (0)

Pimcore Better Search
=====================

[](#pimcore-better-search)

For efficient data maintenance it is mandatory to have an efficient search. This bundle is a drop-in replacement for Pimcore's default backend search. It offers a search experience like users know from popular web search engines.

It does not need any configuration nor external applications to be installed.

Problems with Pimcore's built-in search functionality
-----------------------------------------------------

[](#problems-with-pimcores-built-in-search-functionality)

Pimcore provides an object search in

- global search
- relation field search (via looking glass icon)
- grid search

All of these places share the same underlying search engine and thus the same problems:

- by default (without MySQL's search operators) only word search is supported
    - e.g. searching `product` will not find a data object which only contains `products`
- terms with less than 3 characters get ignored (with MySQL's default `innodb_ft_min_token_size` setting)
    - e.g. searching for `CD` will never find anything
- there is no fuzzy search which searches tolerating typo errors
    - e.g. searching for `produt` will not find `product`
- there is no word-stemming
    - e.g. searching for `shirts` (plural) will not find an object which contains `shirt`
- sometimes order of search results is irritating
    - e.g. elements which contain the search term only once get listed higher than those which contain it multiple times
- search is unusable for languages which do not have word separators (like Chinese, Japanese)

What does the plugin do different?
----------------------------------

[](#what-does-the-plugin-do-different)

This bundle uses [TNT Search](https://github.com/teamtnt/tntsearch) as underlying library. This library solves all above issues, as it:

- supports prefix and suffix search
- supports any word length
- implements fuzzy / typo-tolerant search
- implements word-stemming for many languages
- implements [TF/IDF algorithm](https://en.wikipedia.org/wiki/Tf%E2%80%93idf) to better sort search results
- implements n-gram search
    - for use with languages like Chinese / Japanese which do not have word separators

The plugin works as a drop-in replacement for Pimcore's search features: In the user interface everything will look the same as with default Pimcore. Only the underlying indexing and search logic gets changed.

SQL mode
--------

[](#sql-mode)

You can also add filter conditions via SQL by prepending your query with a `/`, e.g. `/SKU IN (1234,2345,3456)` will return exactly the 3 specified items. For grid searches this feature was available until Pimcore 10 but it never was for relation search. With this feature it is easy to add multiple items to a relation.

And for Pimcore &gt;= 11, this also brings back the SQL filters in the grid.

Installation
------------

[](#installation)

### Composer

[](#composer)

To get the plugin code you have to [buy the plugin](https://shop.blackbit.com/pimcore-better-search/) or write an email to .

You then either get access to the bundle's [Bitbucket repository](https://bitbucket.org/blackbitwerbung/pimcore-plugins-better-search) or you get the plugin code as a zip file. Accessing the Bitbucket repository has the advantage that you will always see changes to the plugin in the pull requests and are able to update to a new version yourself - please visit [this page](https://shop.blackbit.com/bitbucket-access-to-blackbit-plugin-development/) if this sounds interesting to you - if it does, please send us the email address of your BitBucket account so we can allow access to the repository.

When we allow your account to access our repository, please add the repository to the `composer.json` in your Pimcore root folder (see [Composer repositories](https://getcomposer.org/doc/05-repositories.md#vcs)):

```
"repositories": [
    {
        "type": "vcs",
        "url": "git@bitbucket.org:blackbitwerbung/pimcore-plugins-better-search"
    }
]
```

(Please [add your public SSH key to your Bitbucket account](https://support.atlassian.com/bitbucket-cloud/docs/add-access-keys/#Step-3.-Add-the-public-key-to-your-repository) for this to work)

Alternatively if you received the plugin code as zip file, please upload the zip file to your server - e.g. create a folder `bundles` in the Pimcore root folder) and add the following to your `composer.json`:

```
"repositories": [
    {
        "type": "artifact",
        "url": "./bundles/"
    }
]
```

Beware that when you put the zip directly in the Pimcore root folder, and add `"url": "./"` it will still work but Composer will scan *all* files under the Pimcore root recursively to find bundle zip files (incl. assets, versions etc) - which will take quite a long time.

Then you should be able to execute `composer require blackbit/better-search` (or `composer update blackbit/better-search --with-dependencies` for updates if you already have this bundle installed) from CLI.

At last you have to enable and install the plugin, either via browser UI or via CLI `bin/console pimcore:bundle:enable BlackbitBetterSearchBundle && bin/console pimcore:bundle:install BlackbitBetterSearchBundle`

You can always access the latest version by executing `composer update blackbit/better-search --with-dependencies` on CLI.

Recreate search index
---------------------

[](#recreate-search-index)

By default during installation a background process will get started which indexes the data of all existing Pimcore elements.

Whenever an element gets saved, the search index gets updated (the same way as Pimcore does it by default).

To manually recreate the search index, you can execute the CLI command `bin/console better-search:create-index`

###  Health Score

13

—

LowBetter than 1% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity0

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity22

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/edf236af532784ace4b8fe1f8342c426bfcbe1ebfaa68b73fecb5a16a4e8f446?d=identicon)[BlackbitNeueMedien](/maintainers/BlackbitNeueMedien)

---

Top Contributors

[![Jan-Walther-Basilicom](https://avatars.githubusercontent.com/u/92913571?v=4)](https://github.com/Jan-Walther-Basilicom "Jan-Walther-Basilicom (1 commits)")

### Embed Badge

![Health badge](/badges/blackbit-digital-commerce-pimcore-better-search/health.svg)

```
[![Health](https://phpackages.com/badges/blackbit-digital-commerce-pimcore-better-search/health.svg)](https://phpackages.com/packages/blackbit-digital-commerce-pimcore-better-search)
```

###  Alternatives

[awesome-nova/dependent-filter

Dependent filters for Laravel Nova

26193.1k](/packages/awesome-nova-dependent-filter)[algolia/php-dom-parser

A simple tool to turn DOM into Algolia search friendly record objects.

181.8k](/packages/algolia-php-dom-parser)

PHPackages © 2026

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