JROUTER-CLASS-001

JRouter

JRouter class name

JRouter is a Joomla 3 global class. Joomla 4 still has an alias. Joomla 5 needs the Behaviour – Backward Compatibility plugin. Native Joomla 6 does not load that alias — you get Class "JRouter" not found.

JRouterJoomla\CMS\Router\Router

Dies at Joomla 5 → 6J3: Works nativelyJ4: Alias (old name still resolves)J6: Removed — fatalBC plugin: covers the class nameMechanical renameJoomla API

What you will see

  • Class "JRouter" not found
  • Class 'JRouter' not found
  • Failed to open stream: JRouter

Symptoms people search

white screen after disabling compatibility plugin · class not found on Joomla 6 · works on Joomla 5 until I turn off backward compatibility

Replace this code

Swap JRouter for Joomla\CMS\Router\Router.

Joomla 3

Remove or stop calling this

JRouter::getInstance();
// or new JRouter()

Joomla 4 / 6

Use this instead

use Joomla\CMS\Router\Router;

// Call the namespaced class. Do not keep the J prefix.

How to fix it

  1. 1Add a use statement for Joomla\CMS\Router\Router.
  2. 2Replace every JRouter with the short class name from that use line.
  3. 3Disable Behaviour – Backward Compatibility on a Joomla 5 staging site. If it fatals, this class is still in the code.

Also known as

JRouter · Joomla\CMS\Router\Router · class alias · J prefix

Related issues

Get in touch

Have a project in mind? Let's talk about it.

Tell us what you're building. Whether it's a new site, an online store, a mobile app, or something that needs AI under the hood, we'll get back to you within a business day.

Free consultation
No commitment, no pressure
Reply within 24 hours
Usually much faster

Prefer a direct conversation?

Request a project quote

Tell us about your project

Fill out the quick form and we'll reach out.