📊 State of Magento 2025

The Home for Magento 2 Excellence

Quality-tested Magento 2 modules. Explore. Evaluate. Elevate. #magento2

606 Modules
385 Ready
218 Need Help
🏆 Leaderboard
Stale v2.0.0

MarkShust_SpecialRouter

markshust/magento2-module-specialrouter

This extension provides the ability to use special characters in controller or action names.

1,180
Downloads
Below average
11
GitHub Stars
Below average
2y ago
Last Release
0
Open Issues
Build Passing
Ready to install

Build Tests

Composer Install
DI Compile
Templates

Code Quality

Coding Standard
L1 PHPStan

Tested on Magento 2.4.8-p3

Recent Test History

Each release is tested against the latest Magento version at that time.

v2.0.0 on Magento 2.4.8-p3
Dec 16, 2025
v2.0.0 on Magento 2.4.8-p2
Aug 14, 2025
v2.0.0 on Magento 2.4.8
May 21, 2025
v2.0.0 on Magento 2.4.7-p4
Feb 15, 2025
v2.0.0 on Magento 2.4.7-p3
Oct 20, 2024
v2.0.0 on Magento 2.4.7-p2
Sep 8, 2024

+6 older tests

Share This Module's Status

MarkShust_SpecialRouter Magento compatibility status badge

README

Loaded from GitHub

Table of contents

Summary

Magento does not provide the ability to set special characters on controller or action names. This module fixes that by providing the ability to use -, ., ~, _ within a URL.

Installation

composer require markshust/magento2-module-specialrouter
bin/magento module:enable MarkShust_SpecialRouter
bin/magento setup:upgrade

Usage

This module is really simple to use. All you need to do is use the appropriate "name" that matches the symbol you'd like to use in the URL.

  • Symbol: -, Name: Dash
  • Symbol: ., Name: Period
  • Symbol: ~, Name: Tilda
  • Symbol: _, Name: Underscore

For example, to respond to a request with a frontName of foo at the following location:

/foo/alpha-beta/charlie-delta

Use a PHP class named:

Controller/AlphaDashBeta/CharlieDashDelta.php

The - in the URL will be translated to dash in the actionPath and actionName, so if we create files using Dash in the controller and action name, they will respond to these requests.

Credits

M.academy

This course is sponsored by M.academy, the simplest way to learn Magento.

Mark Shust

My name is Mark Shust and I'm the creator of this repo. I'm a 6X Adobe Commerce Certified Developer and have been involved with Magento since the early days (v0.8!). I create technical education courses full-time for my company, M.academy.

  • 🖥️ See my Magento lessons & courses
  • 📖 Read my technical articles
  • 🎥 Watch my YouTube videos
  • 🔗 Connect on LinkedIn
  • 🐦 Follow me on X
  • 💌 Contact me

License

MIT

This content is fetched directly from the module's GitHub repository. We are not the authors of this content and take no responsibility for its accuracy, completeness, or any consequences arising from its use.