Yireo ThemeByRoute

yireo/magento2-theme-by-route

Loads a specific theme per route based on an app/etc/theme-by-route.json file, with advanced per-website and per-store scope rules for fine-grained theme selection.

No errors foundPHPStan level 3Build passingTrusted vendorSemVer violations (83% compliant)

Supported Magento versions: 2.4.9

498 installs★ 2 starsLatest: v1.1.2Released 2025-12-01License: OSL-3.0

composer require yireo/magento2-theme-by-route

README

Reproduced from the package’s own README, under its own license, as of 2026-09-13. Links and images point back at the source repository.

Yireo_ThemeByRoute

Magento version PHP version License Latest Version

Magento 2 module to allow a file app/etc/theme-by-route.json to determine which theme needs to be loaded for which route.

Installation

composer require yireo/magento2-theme-by-route
bin/magento module:enable Yireo_ThemeByRoute

Configuration

Create a file app/etc/theme-by-route.json similar to the following:

{
  "Loki/luma": [
    "cms/index/index"
  ]
}

Now, the Loki/luma theme is applied to all pages.

If you want to control under which circumstances which theme is applied, there is an advanced syntax as well:

[
  {
    "scope_type": "website",
    "scope_code": "default",
    "theme": "Loki/luma",
    "pages": [
      "cms/index/index"
    ]
  }
]

Current status

Static Tests Unit Tests Integration Tests Playwright DI Compilation

← All packages from yireo