PHPackages                             plan2net/backend-category-hierarchy - 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. plan2net/backend-category-hierarchy

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

plan2net/backend-category-hierarchy
===================================

Show category hierarchy information in list view

14.0.0(2mo ago)11.4kGPL-2.0-or-laterPHPPHP ^8.2

Since Nov 17Pushed 2mo ago3 watchersCompare

[ Source](https://github.com/plan2net/backend-category-hierarchy)[ Packagist](https://packagist.org/packages/plan2net/backend-category-hierarchy)[ Docs](https://plan2.net)[ RSS](/packages/plan2net-backend-category-hierarchy/feed)WikiDiscussions main Synced yesterday

READMEChangelog (1)Dependencies (11)Versions (8)Used By (0)

Backend Category Hierarchy
==========================

[](#backend-category-hierarchy)

[![Packagist Version](https://camo.githubusercontent.com/9da069935b732c3412880e3dbfea57ae007b9520122cda552dd907a4a5418ffc/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f706c616e326e65742f6261636b656e642d63617465676f72792d6869657261726368792e737667)](https://packagist.org/packages/plan2net/backend-category-hierarchy)[![Downloads](https://camo.githubusercontent.com/a3965fd7aa66fff25fa59c8aa3102509c2b3e35b0414ee2b4736fc1801d4e6b8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f706c616e326e65742f6261636b656e642d63617465676f72792d6869657261726368792e737667)](https://packagist.org/packages/plan2net/backend-category-hierarchy)[![Supported TYPO3](https://camo.githubusercontent.com/2a9e26a089f5d6ad678941800c95e6380c9bc3aeaa261f81c62612119c2dcc3d/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5459504f332d31332e3425323025374325323031342d6f72616e67652e737667)](https://get.typo3.org/)[![Supported PHP](https://camo.githubusercontent.com/fff68409e83d3ed7aa0b378c76366d72fa0fb1f875467162ce208929b7e753a7/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d382e32253230253743253230382e33253230253743253230382e342d626c75652e737667)](https://www.php.net/)[![License](https://camo.githubusercontent.com/6d6561501d5405ffc59c38bb7807b455bb17805f9b4c492631a8034134292966/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d47504c2d2d322e302532422d626c75652e737667)](LICENSE)

Show the full parent path of every `sys_category` record in TYPO3 backend lists.

[![Backend list view of categories](Documentation/category_list_default.png)](Documentation/category_list_default.png)

The hierarchy is also shown in the global backend search:

[![Hierarchy in the global backend search](Documentation/live_search_results.png)](Documentation/live_search_results.png)

Why
---

[](#why)

TYPO3's backend lists only show the leaf title of a category. Once an editor has multiple branches with categories named *News*, *Frontend*, or *Events*, those rows become indistinguishable.

This extension augments the displayed title with its full ancestor chain in list views and reference dropdowns. Edit forms and tree views are left untouched.

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

[](#installation)

```
composer require plan2net/backend-category-hierarchy
```

Configuration
-------------

[](#configuration)

By default, a category record like *Java* under *Programming* under *Topic*renders as:

```
Java (Programming > Topic)

```

The extension ships a Site Set with the defaults. Activate it per Site by adding the dependency in `config/sites//config.yaml`:

```
dependencies:
  - plan2net/backend-category-hierarchy
```

That is enough — every Site that depends on the set gets the default `Java (Programming > Topic)` rendering without any further configuration.

To override the defaults for a Site, add a `settings:` block alongside the dependency:

```
dependencies:
  - plan2net/backend-category-hierarchy

settings:
  backendCategoryHierarchy:
    titleTemplate: '{ancestors} > {current}'
    ancestorSeparator: ' > '
    compactTitleTemplate: '{current} ({ancestors})'
```

With the override above, list rows render as:

```
Programming > Topic > Java

```

In the global backend search (and other narrow popups that truncate at the end), `compactTitleTemplate` is used instead so the leaf stays visible:

```
Java (Programming > Topic)

```

Placeholders (both templates):

- `{current}` — the category title
- `{ancestors}` — the ancestor chain joined by `ancestorSeparator`

Invalid values (empty, or a template missing one of the placeholders) silently fall back to the defaults `{current} ({ancestors})` and `>`.

Note

**Workspaces:** the current (leaf) record is workspace-overlaid via `BackendUtility::getRecordWSOL`. Ancestor titles and chain structure are read from **live** data — workspace edits to a parent category's title or its `parent` pointer only become visible in the chain after publication. Collapsing the chain into a single recursive CTE would require reimplementing TYPO3's workspace-overlay rules in SQL, which is fragile and out of scope.

Development
-----------

[](#development)

```
composer test:unit   # phpunit
composer quality     # php-cs-fixer + phpstan + psalm + phpunit
```

###  Health Score

48

—

FairBetter than 93% of packages

Maintenance83

Actively maintained with recent releases

Popularity21

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 91.3% 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 ~425 days

Total

4

Last Release

85d ago

Major Versions

1.0.0 → 12.0.02024-08-08

12.0.0 → 13.0.02024-08-08

13.0.0 → 14.0.02026-05-17

### Community

Maintainers

![](https://www.gravatar.com/avatar/fdc5d7c9be0f04c0d84c56db1e263fb7cb88c40564a7c293f1a2d4aa543f0115?d=identicon)[plan2net@packagist](/maintainers/plan2net@packagist)

---

Top Contributors

[![wazum](https://avatars.githubusercontent.com/u/146727?v=4)](https://github.com/wazum "wazum (21 commits)")[![richardkrikler](https://avatars.githubusercontent.com/u/57064056?v=4)](https://github.com/richardkrikler "richardkrikler (2 commits)")

---

Tags

backendcategoriescategoryhierarchytypo3typo3-cmstypo3-extensionusabilitybackendTYPO3 CMScategory

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan, Psalm

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/plan2net-backend-category-hierarchy/health.svg)

```
[![Health](https://phpackages.com/badges/plan2net-backend-category-hierarchy/health.svg)](https://phpackages.com/packages/plan2net-backend-category-hierarchy)
```

###  Alternatives

[friendsoftypo3/content-blocks

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

103574.3k67](/packages/friendsoftypo3-content-blocks)[wazum/sluggi

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

40543.5k](/packages/wazum-sluggi)[yoast-seo-for-typo3/yoast_seo

Yoast SEO for TYPO3

571.8M9](/packages/yoast-seo-for-typo3-yoast-seo)[typo3/cms-redirects

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

167.6M84](/packages/typo3-cms-redirects)[web-vision/wv_deepltranslate

DeepL Translate (CORE) - This extension provides option to translate content element, and TCA record texts to DeepL supported languages.

34311.2k](/packages/web-vision-wv-deepltranslate)[friendsoftypo3/visual-editor

TYPO3 CMS Visual Editor - Brings a modern WYSIWYG editing experience to TYPO3 CMS.

6010.0k3](/packages/friendsoftypo3-visual-editor)

PHPackages © 2026

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