Bug #86596

Slash in Page Title still in URL

Added by Kalle Karlson about 1 year ago. Updated 6 months ago.

Must have
Link Handling, Site Handling & Routing
Target version:
Start date:
Due date:
% Done:


TYPO3 Version:
PHP Version:
Is Regression:
Sprint Focus:


If the page title contains a slash like in "Sanitär / Installation" the generated url looks like "/sanitaer-/-installation".

The slash should not appear in the URL, cause its a directory seperator sign, so from an seo perspective the request is treated wrong.

Related issues

Related to TYPO3 Core - Bug #86740: Using slash in slug in extension record throws exception in frontend Closed 2018-10-25
Related to TYPO3 Core - Bug #88291: Exception thrown if slash in route field of PersistedPatternMapper aspect New 2019-05-07


#1 Updated by Josef Glatz about 1 year ago

Thanks for your issue!

Just by reading the ChangeLog RsT document of the new feature this seems to be intended by the core team.

According https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.4/Feature-84729-NewTCATypeSlug.html?highlight=contain%20slashes

In contrast to concepts within RealURL of "URL segments", a slug is a segment of a URL, but it is not limited to be separated by slashes. Therefore, a slug can contain slashes.

IMO from an SEO guru / backend Editor / and even a backend editor who came into contact with Realurl with TYPO3 < v9 before

It may make sense to make the Replace Character Map configurable in \TYPO3\CMS\Core\DataHandling\SlugHelper maybe. Especially if other languages ​​are used where there some other characters needs to be replaced by the fallbackCharactar. I think there will be situations, where TYPO3 must provide some configuration options to facilitate the work of the backend editor in creating slugs.

As a workaround you can manually adopt the slug field content to your needs

Since I'm not familiar with the Insights of the new feature, we can only wait for an answer from the Core Team

#2 Updated by Kalle Karlson about 1 year ago

Thank you for your answer, but I think it's wrong to refer only on realurl behavior. The slash is a reserved character like mentioned in RFC1738 (http://www.ietf.org/rfc/rfc1738.txt )

An HTTP URL takes the form:


   Within the <path> and <searchpart> components, "/", ";", "?" are
   reserved.  The "/" character may be used within HTTP to designate a
   hierarchical structure.

So imho the slash has to be removed or encoded.

#3 Updated by Georg Ringer about 1 year ago

but the code doesn't know if you would like to have a heirachical structure like sanitär/installation or if it should be - used.

or do you see a way?

#4 Updated by Georg Ringer about 1 year ago

  • Status changed from New to Needs Feedback

#5 Updated by Kalle Karlson about 1 year ago

The Pagetitle is always the last part of the heirachical structure. If I want different "folders" I should organize my content with parent pages so that "Sanitär" and "Installation" are two different pages. The URL should respect the backend tree structure. The default case should be that the slash is stripped from URL on auto generate, if I want a slash at this position I can add it manually.

#6 Updated by Georg Ringer about 1 year ago

I understand what you write and still the question: technically it is not possible to know if an editor wants to have the slash from the beginning on because he wants it that way or if it should be stripped.

#7 Updated by Kalle Karlson about 1 year ago

Typo3 should respect the standard in the default case and the standard said that a slash is for hierarchical structure.

#8 Updated by Sebastian Rosskopf 11 months ago

In my opinion there will be various cases in the future where a slash in a page or record title will be problematic in generating the URL path segments.
Especially when having data records with own path segments, a slash in the record's title will be causing problems.

Let's say my record's title is "Working student / Internship", my URL will look like


which doesn't resolve to valid page structure and doesn't make any sense. There should be options to maybe configure in TCA which characters to be excluded/replaced from speaking URL paths.

#9 Updated by Peter Kraume 11 months ago

I'd also vote for removing the slash or making it at least configurable.
If I as an editor want to have a hierarchical structure, I nest my pages accordingly. Everything else would only lead to confusion.

#10 Updated by Peter Kraume 11 months ago

  • Related to Bug #86740: Using slash in slug in extension record throws exception in frontend added

#11 Updated by Peter Kraume 10 months ago

I think this one is solved via #86740.

#12 Updated by Riccardo De Contardi 10 months ago

  • Status changed from Needs Feedback to Closed
  • Target version deleted (next-patchlevel)

As Peter Kraume pointed out, https://forge.typo3.org/issues/86740 (https://review.typo3.org/58851) added the possibility to set up replacements in the slug configuration; available since TYPO3 9.5.2

Documentation: https://docs.typo3.org/typo3cms/extensions/core/Changelog/9.5.x/Feature-86740-AllowRemovalOfSlashInSlug.html

I close this one, please let me know if this is the wrong decision.

#13 Updated by Sven Juergens 6 months ago

sorry, I open this bug again. The solution refers to self-written extensions, but how does this relate to the TYPO3 pages? How do I solve this problem for normal pages?
in current TCA für pages -> slug is not an option for that, rigth?

       'slug' => [
            'exclude' => true,
            'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.slug',
            'displayCond' => 'USER:' . \TYPO3\CMS\Core\Compatibility\PseudoSiteTcaDisplayCondition::class . '->isInPseudoSite:pages:false',
            'config' => [
                'type' => 'slug',
                'size' => 50,
                'generatorOptions' => [
                    'fields' => ['title'],
                    'fieldSeparator' => '/',
                    'prefixParentPageSlug' => true
                'fallbackCharacter' => '-',
                'eval' => 'uniqueInSite',
                'default' => ''

#14 Updated by Daniel Reichel 5 months ago

  • Related to Bug #88291: Exception thrown if slash in route field of PersistedPatternMapper aspect added

Also available in: Atom PDF