PHPackages                             somardigital/silverstripe-forager-elasticsearch - 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. somardigital/silverstripe-forager-elasticsearch

ActiveSilverstripe-vendormodule[Search &amp; Filtering](/categories/search)

somardigital/silverstripe-forager-elasticsearch
===============================================

Elasticsearch Search Provider for Silverstripe Forager

2.0.1(1mo ago)00[1 PRs](https://github.com/somardigital/silverstripe-forager-elasticsearch/pulls)BSD-3-ClausePHPPHP ^8.2

Since Jun 12Pushed todayCompare

[ Source](https://github.com/somardigital/silverstripe-forager-elasticsearch)[ Packagist](https://packagist.org/packages/somardigital/silverstripe-forager-elasticsearch)[ RSS](/packages/somardigital-silverstripe-forager-elasticsearch/feed)WikiDiscussions main Synced today

READMEChangelog (2)Dependencies (7)Versions (7)Used By (0)

🧺 Silverstripe Forager &gt; [![](https://camo.githubusercontent.com/50f3c6826fb9790636d804a4968e426c3db633ad559e1e989b5768d9a6b0a6db/68747470733a2f2f7777772e656c61737469632e636f2f616e64726f69642d6368726f6d652d313932783139322e706e67)](https://camo.githubusercontent.com/50f3c6826fb9790636d804a4968e426c3db633ad559e1e989b5768d9a6b0a6db/68747470733a2f2f7777772e656c61737469632e636f2f616e64726f69642d6368726f6d652d313932783139322e706e67) Elasticsearch Search provider
===============================================================================================================================================================================================================================================================================================================================================================================================================================================================================

[](#-silverstripe-forager---elasticsearch-search-provider)

This module provides the ability to index content for an Elasticsearch engine using Elastic's [Elasticsearch PHP library](https://github.com/elastic/elasticsearch-php).

Elasticsearch provider for [Silverstripe Forager](https://github.com/silverstripeltd/silverstripe-forager).

This module **does not** provide any method for performing searches on your engines - we've added some [suggestions](#searching) though.

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

[](#installation)

`composer require somardigital/silverstripe-forager-elasticsearch`

Activating Elasticsearch
------------------------

[](#activating-elasticsearch)

To start using Elasticsearch, define environment variables containing your API key, endpoint, and variant.

```
ELASTIC_SEARCH_ENDPOINT="https://abc123.ap-southeast-2.aws.found.io"
ELASTIC_SEARCH_CLOUD_ID="xxx:abc123==" # Alternative to endpoint
ELASTIC_SEARCH_INDEX_PREFIX="dev"
ELASTIC_SEARCH_API_KEY="abc123"
ELASTIC_SEARCH_API_ID="xxx" # Only required if Api Key does not contain Api ID in base64 encodeed string
ELASTIC_SEARCH_DASHBOARD="https://abc123.ap-southeast-2.aws.found.io:9243"

```

Configuring Elasticsearch
-------------------------

[](#configuring-elasticsearch)

The most notable configuration surface for Elasticsearch is the schema, which determines how data is stored in your Elasticsearch index (engine). There are the following types of data currently configured in this module:

- `text` (default)
- `alias`
- `binary`
- `boolean`
- `date`
- `float`
- `geo_point`
- `integer`
- `keyword`
- `long`
- `point`
- `object`
- `nested`

The following additional options are available:

- `fields`
- `format`
- `ignore_above`
- `ignore_malformed`
- `index`
- `meta`
- `path`
- `properties`
- `store`
- `term_vector`

You can specify these data types in the `options` node of your fields.

```
SilverStripe\Forager\Service\IndexConfiguration:
  indexes:
    myindex:
      includeClasses:
        SilverStripe\CMS\Model\SiteTree:
          fields:
            title: true
            summary_field:
              property: SummaryField
              options:
                type: text
          settings:
```

**Note**: Be careful about whimsically changing your schema. ElasticSearch may need to be fully reindexed if you change the name of a field. Fields cannot be deleted so re-naming one will leave any previously created fields around.

Indexing File Content
---------------------

[](#indexing-file-content)

The [silverstripe-text-extraction](https://github.com/silverstripe/silverstripe-textextraction) module is the recommended approach for fetching the content of files to index. Once configured, you can use the getFileContent method on a file to get the content.

```
SilverStripe\Forager\Service\IndexConfiguration:
  indexes:
    myindex:
      includeClasses:
        SilverStripe\CMS\Model\SiteTree:
          fields:
            pdf_example:
              property: PdfExample.FileContent
              options:
                type: text
```

Additional documentation
------------------------

[](#additional-documentation)

Majority of documentation is provided by the Silverstripe Forager module. A couple in particular that might be useful to you are:

- [Configuration](https://github.com/silverstripeltd/silverstripe-forager/blob/1/docs/en/configuration.md)
- [Customisation](https://github.com/silverstripeltd/silverstripe-forager/blob/1/docs/en/customising.md)

Credits
-------

[](#credits)

This module is based on the [silverstripe-forager-elastic-enterprise](https://github.com/silverstripeltd/silverstripe-forager-elastic-enterprise) module

###  Health Score

42

—

FairBetter than 88% of packages

Maintenance97

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

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 ~191 days

Total

3

Last Release

32d ago

Major Versions

1.0.0 → 2.0.02026-06-04

### Community

Maintainers

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

---

Top Contributors

[![chtombleson](https://avatars.githubusercontent.com/u/276237?v=4)](https://github.com/chtombleson "chtombleson (6 commits)")[![jeremysomar](https://avatars.githubusercontent.com/u/54250510?v=4)](https://github.com/jeremysomar "jeremysomar (6 commits)")[![JaiBarlow95](https://avatars.githubusercontent.com/u/243000619?v=4)](https://github.com/JaiBarlow95 "JaiBarlow95 (1 commits)")

---

Tags

searchelasticsearchelasticelastic searchSilverstripe-CMS

### Embed Badge

![Health badge](/badges/somardigital-silverstripe-forager-elasticsearch/health.svg)

```
[![Health](https://phpackages.com/badges/somardigital-silverstripe-forager-elasticsearch/health.svg)](https://phpackages.com/packages/somardigital-silverstripe-forager-elasticsearch)
```

###  Alternatives

[jeroen-g/explorer

Next-gen Elasticsearch driver for Laravel Scout.

399672.8k](/packages/jeroen-g-explorer)[unopim/unopim

UnoPim Laravel PIM

10.5k2.4k](/packages/unopim-unopim)[mailerlite/laravel-elasticsearch

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

936603.4k2](/packages/mailerlite-laravel-elasticsearch)[eslazarev/wildberries-sdk

Wildberries OpenAPI clients (generated).

293.1k](/packages/eslazarev-wildberries-sdk)[heyday/silverstripe-elastica

Provides Elastic Search integration for SilverStripe DataObjects using Elastica

1138.5k2](/packages/heyday-silverstripe-elastica)[blomstra/search

Replaces Flarum search with one powered by an elastic search server.

125.3k](/packages/blomstra-search)

PHPackages © 2026

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