PHPackages                             h4ck3r31/solr-utility - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. h4ck3r31/solr-utility

ActiveTypo3-cms-extension[Utility &amp; Helpers](/categories/utility)

h4ck3r31/solr-utility
=====================

This TYPO3 extension provides several utilities for ext:solr

v1.0.2(8y ago)1631GPL-2.0+PHP

Since Aug 15Pushed 4y ago1 watchersCompare

[ Source](https://github.com/hofhaeckerei/solr_utility)[ Packagist](https://packagist.org/packages/h4ck3r31/solr-utility)[ RSS](/packages/h4ck3r31-solr-utility/feed)WikiDiscussions master Synced 2w ago

READMEChangelogDependencies (1)Versions (5)Used By (0)

TYPO3 Extension solr\_utility
=============================

[](#typo3-extension-solr_utility)

Content Objects
---------------

[](#content-objects)

### SOLR\_BASECATEGORY

[](#solr_basecategory)

Fetches the next level cateogry titles of a given base category.

**Properties**

- `baseId` *(int, required)*: Defines the base ID of `sys_category`to retrieve the next level children from
- `removeEmptyValues` *(bool, default: true)*: Whether to remove items that don't have a category title
- `multiValue` *(bool, default: true)*: Whether to return a multivalued array
- `singleValueGlue` *(string, default: ",")*: Which character to use to concatenate multiple category titles in case `multiValue` is disabled
- `filterIds` *(int-list)*: Defines which category IDs to keep in the final result of resolved base categories
- `excludeIds` *(int-list)*: Defines which category IDs to exclude from the final result of resolved base categories - takes precedence over `filterIds`concerning values that are present for both properties

**Example**

Given the following category tree, the `SOLR_BASECATEGORY` content object invoked for `baseId=1` would fetch the category titles of the next level below the submitted base category - in this example the result would be `["News", "Products", "Events", "Press"]` only.

- 1: Base Categories
    - 11: News
    - 12: Products
        - 121: New Products
        - 122: Products on Sale
    - 13: Events
    - 14: Press
- 2: Product Categories
    - 21: Software
    - 23: Books

```
plugin.tx_solr.index.queue {
    pages {
        fields {
            baseCategory_stringM = SOLR_BASECATEGORY
            baseCategory_stringM {
                baseId = 1
                localField = categories
                multiValue = 1
                # both filterIds and excludeIds
                # result in "Press" being ignored
                filterIds = 11,12,13
                excludeIds = 14
            }

```

*Example of fetching next level category titles of base category with `uid=1`*

Indexing
--------

[](#indexing)

### Ignore page ID constraints

[](#ignore-page-id-constraints)

Ignore page ID constraints on indexing entities that are not accessible per default, like e.g. indexing `sys_file` items on root-page (`pid=0`).

```
plugin.tx_solr.index.queue {
    document {
        table = sys_file
        additionalWhereClause = storage=1 AND identifier LIKE '/public-downloads/%'
        initialization = GMK\BezirkOberfranken\Alternatives\Solr\DocumentInitializer

```

*Example of indexing files of storage `1` below folder `/public-downloads/`*

### Prevent non-translated pages being indexes

[](#prevent-non-translated-pages-being-indexes)

Prevents pages being indexed multiple times if no page translation is available. This prevents rendering the content fall-back mode for `sys_language_uid=0` with having a real language in the request.

```
plugin.tx_solr.index.queue {
    pages {
        indexer = H4ck3r31\SolrUtility\IndexQueue\PreventNonTranslatedPageIndexer

```

*Example of preventing non-translated pages get indexed in content fall-back mode*

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity66

Established project with proven stability

 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.

###  Release Activity

Cadence

Every ~19 days

Total

4

Last Release

3183d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/402145?v=4)[Oliver Hader](/maintainers/ohader)[@ohader](https://github.com/ohader)

---

Top Contributors

[![ohader](https://avatars.githubusercontent.com/u/402145?v=4)](https://github.com/ohader "ohader (11 commits)")

### Embed Badge

![Health badge](/badges/h4ck3r31-solr-utility/health.svg)

```
[![Health](https://phpackages.com/badges/h4ck3r31-solr-utility/health.svg)](https://phpackages.com/packages/h4ck3r31-solr-utility)
```

###  Alternatives

[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

101466.4k45](/packages/friendsoftypo3-content-blocks)[wazum/sluggi

TYPO3 extension for URL slug management with inline editing, auto-sync, locking, access control, and redirects

41515.2k](/packages/wazum-sluggi)[praetorius/vite-asset-collector

Use AssetCollector to embed frontend assets generated by vite

54299.7k1](/packages/praetorius-vite-asset-collector)[typo3/cms-redirects

TYPO3 CMS Redirects - Create manual redirects, list existing redirects and automatically createredirects on slug changes.

167.3M74](/packages/typo3-cms-redirects)[typo3/cms-sys-note

TYPO3 CMS System Notes - Records with messages which can be placed on any page and contain instructions or other information related to a page or section.

116.2M37](/packages/typo3-cms-sys-note)[eliashaeussler/typo3-form-consent

Extension for TYPO3 CMS that adds double opt-in functionality to EXT:form

1595.5k](/packages/eliashaeussler-typo3-form-consent)

PHPackages © 2026

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