PHPackages                             b13/masi - 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. b13/masi

ActiveTypo3-cms-extension

b13/masi
========

TYPO3 Extend URL generation to optionally include storage folders.

3.1.0(2mo ago)24299.3k—8.4%15[5 issues](https://github.com/b13/masi/issues)GPL-2.0-or-laterPHPPHP ^8.1

Since May 13Pushed 2mo ago12 watchersCompare

[ Source](https://github.com/b13/masi)[ Packagist](https://packagist.org/packages/b13/masi)[ Docs](https://github.com/b13/masi)[ RSS](/packages/b13-masi/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (2)Versions (27)Used By (0)

masi - Extend TYPO3's URL Handling
==================================

[](#masi---extend-typo3s-url-handling)

Masi is the missing piece for the people who want to customize *everything* when generating URLs in TYPO3 v10+.

Features
--------

[](#features)

1. TYPO3 v10 skips pages of type "SysFolder" and "Spacers" by default when generating the URL of subpages. *masi* includes them by default!
2. *masi* also ships with a new checkbox for pages, to exclude a certain page slug when generating subpages. This way, you can exclude only certain SysFolders.

There is a CLI command to migrate the options from RealURL to the *masi* database field.

3. *masi* evaluates PageTSconfig where you can override your values.

    ```
     TCEMAIN.pages.slug.generatorOptions {
         fields = company, city
         fieldSeparator = -
     }

    ```
4. *masi* allows you to set a hard prefix (!) for a specific page tree via PageTS:

    ```
     TCEMAIN.pages.slug.generatorOptions {
         prefix = /wishlist/
     }

    ```

    Any prefix is added BEFORE the parent page prefix, but you can also disable the option "prefixParentPageSlug"

    ```
     TCEMAIN.pages.slug.generatorOptions {
         prefixParentPageSlug = 0
     }

    ```

Of course, all the values within the "slug" field can be changed by the editor, but it's here for convenience.

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

[](#installation)

Use it via `composer req b13/masi` or install the Extension `masi` from the TYPO3 Extension Repository.

*masi* requires TYPO3 v10.4.0 or later.

If you want to migrate from RealURL, execute this one-time command as long as the database field `pages.tx_realurl_exclude` exists, and transfers the data to `pages.exclude_slug_for_subpages`:

```
`vendor/bin/typo3 database:migrate:masi`

```

There is also an upgrade wizard for the Installer to execute the same functionality via the Upgrade Tool of TYPO3's Installer.

License
-------

[](#license)

As TYPO3 Core, *masi* is licensed under GPL2 or later. See the LICENSE file for more details.

Background, Authors &amp; Further Maintenance
---------------------------------------------

[](#background-authors--further-maintenance)

This extension was created as a show-case on what you can do with one magic hook for TYPO3 v10 and customize so many things.

TYPO3 community often requests functionality, which can be put in small and efficient extensions, and *masi* does exactly that, without having to burden everything into TYPO3 Core.

*masi* was initially created by Benni Mack in 2019, for [b13, Stuttgart](https://b13.com), with the nice support from Martin Kutschker.

[Find more TYPO3 extensions we have developed](https://b13.com/useful-typo3-extensions-from-b13-to-you) that help us deliver value in client projects. As part of the way we work, we focus on testing and best practices to ensure long-term performance, reliability, and results in all our code.

###  Health Score

62

—

FairBetter than 99% of packages

Maintenance80

Actively maintained with recent releases

Popularity47

Moderate usage in the ecosystem

Community29

Small or concentrated contributor base

Maturity78

Established project with proven stability

 Bus Factor3

3 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 ~202 days

Total

13

Last Release

81d ago

Major Versions

1.2.2 → 2.0.02022-12-13

2.0.3 → v13.x-dev2024-11-28

PHP version history (2 changes)2.0.0PHP ^7.4 || ~8.0

3.0.0PHP ^8.1

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/165630?v=4)[Benni Mack](/maintainers/bmack)[@bmack](https://github.com/bmack)

![](https://avatars.githubusercontent.com/u/2851821?v=4)[b13 GmbH](/maintainers/b13)[@b13](https://github.com/b13)

![](https://avatars.githubusercontent.com/u/3862523?v=4)[David Steeb](/maintainers/davidsteeb)[@davidsteeb](https://github.com/davidsteeb)

---

Top Contributors

[![bmack](https://avatars.githubusercontent.com/u/165630?v=4)](https://github.com/bmack "bmack (25 commits)")[![davidsteeb](https://avatars.githubusercontent.com/u/3862523?v=4)](https://github.com/davidsteeb "davidsteeb (9 commits)")[![jschlier](https://avatars.githubusercontent.com/u/9108576?v=4)](https://github.com/jschlier "jschlier (7 commits)")[![achimfritz](https://avatars.githubusercontent.com/u/2152991?v=4)](https://github.com/achimfritz "achimfritz (5 commits)")[![christophlehmann](https://avatars.githubusercontent.com/u/4953689?v=4)](https://github.com/christophlehmann "christophlehmann (3 commits)")[![o-ba](https://avatars.githubusercontent.com/u/8812114?v=4)](https://github.com/o-ba "o-ba (2 commits)")[![GaryWilsonJr](https://avatars.githubusercontent.com/u/20659548?v=4)](https://github.com/GaryWilsonJr "GaryWilsonJr (2 commits)")[![djcprinse](https://avatars.githubusercontent.com/u/12030850?v=4)](https://github.com/djcprinse "djcprinse (2 commits)")[![baschny](https://avatars.githubusercontent.com/u/337581?v=4)](https://github.com/baschny "baschny (2 commits)")[![Patta](https://avatars.githubusercontent.com/u/2151127?v=4)](https://github.com/Patta "Patta (1 commits)")[![pipaltree](https://avatars.githubusercontent.com/u/2978136?v=4)](https://github.com/pipaltree "pipaltree (1 commits)")[![torben-fr](https://avatars.githubusercontent.com/u/92865600?v=4)](https://github.com/torben-fr "torben-fr (1 commits)")[![webian](https://avatars.githubusercontent.com/u/462601?v=4)](https://github.com/webian "webian (1 commits)")[![b13-michaelsemle](https://avatars.githubusercontent.com/u/23473071?v=4)](https://github.com/b13-michaelsemle "b13-michaelsemle (1 commits)")[![cweiske](https://avatars.githubusercontent.com/u/59036?v=4)](https://github.com/cweiske "cweiske (1 commits)")[![dmitryd](https://avatars.githubusercontent.com/u/306133?v=4)](https://github.com/dmitryd "dmitryd (1 commits)")[![dogawaf](https://avatars.githubusercontent.com/u/381969?v=4)](https://github.com/dogawaf "dogawaf (1 commits)")[![ErHaWeb](https://avatars.githubusercontent.com/u/5416710?v=4)](https://github.com/ErHaWeb "ErHaWeb (1 commits)")[![franzkugelmann](https://avatars.githubusercontent.com/u/11320147?v=4)](https://github.com/franzkugelmann "franzkugelmann (1 commits)")[![fwg](https://avatars.githubusercontent.com/u/139187?v=4)](https://github.com/fwg "fwg (1 commits)")

---

Tags

urlslugtypo3

### Embed Badge

![Health badge](/badges/b13-masi/health.svg)

```
[![Health](https://phpackages.com/badges/b13-masi/health.svg)](https://phpackages.com/packages/b13-masi)
```

###  Alternatives

[jbroadway/urlify

A fast PHP slug generator and transliteration library that converts non-ascii characters for use in URLs.

6737.4M62](/packages/jbroadway-urlify)[wazum/sluggi

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

39488.5k](/packages/wazum-sluggi)[internetgalerie/ig-slug

Rebuild URL slugs

12861.7k2](/packages/internetgalerie-ig-slug)[in2code/powermail

Powermail is a well-known, editor-friendly, powerful and easy to use mailform extension for TYPO3 with a lots of features

982.5M38](/packages/in2code-powermail)[typo3/testing-framework

The TYPO3 testing framework provides base classes for unit, functional and acceptance testing.

675.0M775](/packages/typo3-testing-framework)[koehlersimon/slug

Helps you managing the URL slugs of your TYPO3 site

2965.7k](/packages/koehlersimon-slug)

PHPackages © 2026

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