Shaper Melvin 2.0.3 – Legacy Joomla API prevents upgrading to Joomla 6 - Forum | JoomShaper
Staff replied Templates Joomla 5 v2.0.3

Shaper Melvin 2.0.3 – Legacy Joomla API prevents upgrading to Joomla 6

Asked by Mario 2 weeks ago Last activity 1 week ago

Hello JoomShaper Technical Support Team,

We are preparing to upgrade our website from Joomla 5.4.10 to Joomla 6, but we have encountered a compatibility issue with Shaper Melvin 2.0.3.

The problem occurs specifically when disabling the Joomla “Behaviour – Backward Compatibility” plugin, as required during the preparation for the Joomla 6 upgrade.

With this plugin enabled, the website works correctly.

However, as soon as we disable it, the frontend stops working and displays an HTTP 500 error:

ClassNotFoundError: Attempted to load class "JFactory" from the global namespace.

Interestingly, the website works correctly with the Cassiopeia template, even with the backward compatibility plugin disabled.

The problem therefore appears to be related specifically to Shaper Melvin or its dependencies.

  1. Legacy Joomla API calls

After examining the template files, we discovered that Melvin still contains legacy Joomla API calls.

For example, in /templates/shaper_melvin/index.php:

$doc = JFactory::getDocument();
$app = JFactory::getApplication();
$menu = $app->getMenu()->getActive();

Similar calls are present in /templates/shaper_melvin/error.php.

We also found references to other legacy classes, including JText, JRoute and JUri.

These calls depend on Joomla’s backward compatibility layer and prevent the template from working when that layer is disabled.

  1. Current installation
  • Joomla: 5.4.10
  • Shaper Melvin: 2.0.3
  • Helix3 Framework: 3.1.0
  • Helix3 Ajax: 3.1.0
  • SP Page Builder: 6.10.0

All extensions listed above are updated to their latest available versions.

  1. Compatibility with Joomla 6

According to your website, Shaper Melvin 2.0.3 is compatible with Joomla 6.

However, the presence of these legacy API calls raises concerns about whether the template can actually operate without Joomla’s previous backward compatibility layer.

Could your development team please clarify:

  1. Is Shaper Melvin 2.0.3 fully compatible with Joomla 6 without the old backward compatibility plugin?
  2. Why does the latest template version still contain legacy Joomla API calls such as JFactory, JText and JRoute?
  3. Is there an official patch or updated package that removes these dependencies?
  4. What is the recommended procedure for upgrading an existing Melvin-based website to Joomla 6 while preserving its design and configuration?

We would prefer an official solution rather than manually modifying multiple PHP files.

Our website contains customized layouts, CSS, menus and SP Page Builder content that we need to preserve.

We can provide the complete error logs and template files if necessary.

We would appreciate a response from the JoomShaper development team, as this issue currently prevents us from proceeding with the Joomla 6 upgrade.

Thank you for your assistance.

Best regards,

Mario Lisi

3 replies

Ziaul Kabir Staff

Hello Mario,

Thank you for providing the detailed information.

The issue appears to be related to legacy Joomla API calls used in the Shaper Melvin template. During the Joomla 6 upgrade preparation, disabling the Behaviour – Backward Compatibility plugin may cause these legacy calls to fail, resulting in the HTTP 500 error.

For now, we recommend performing the upgrade on a staging site first or ensuring that you have a complete backup of your website and database before proceeding.

You may temporarily ignore this error during the upgrade process, but please make sure to re-enable the Behaviour – Backward Compatibility 6 plugin once the upgrade is complete.

Regarding the template's full compatibility with Joomla 6 and the availability of an official fix, our development team would need to review the issue further.

Thank you for your patience and understanding.

Best Regards,

Mario Asked this

Hello,

Thank you for your reply.

I understand that the issue is caused by legacy Joomla API calls in the Shaper Melvin template.

However, I would like to clarify an important point: disabling the Behaviour – Backward Compatibility plugin causes an HTTP 500 error that makes the website unusable. This is not simply a warning that can be ignored during the upgrade process.

I have already tested the issue and confirmed that:

  • With Shaper Melvin and the Backward Compatibility plugin enabled, the website works.
  • With Shaper Melvin and the plugin disabled, the website returns HTTP 500.
  • With the Cassiopeia template, the website works even when the plugin is disabled.

This clearly indicates that the problem is specific to Shaper Melvin.

I would prefer not to modify the template’s PHP files manually, as these changes could be overwritten by future updates.

Could you please escalate this issue to your development team and confirm whether an official Joomla 6 compatibility update for Shaper Melvin is planned?

In the meantime, I will continue working with Joomla 5.4.10.

Thank you.

Ziaul Kabir Staff

Hello,

Thank you for the detailed explanation and for sharing your test results.

Could you please allow me some time to test this issue on my end? I’ll investigate it further and get back to you with an update as soon as possible.

Thank you for your patience and understanding.

Ziaul Kabir Staff

Hello Mario,

I tested this issue locally using Shaper Melvin 2.0.3 and would like to share my findings.

During the Joomla 5 to Joomla 6 upgrade process, keeping the Behaviour – Backward Compatibility plugin enabled can cause issues with the upgrade. In my testing, I had to disable this plugin to proceed with the upgrade.

After disabling it, the frontend became inaccessible and displayed an HTTP 500 error because Shaper Melvin relies on legacy Joomla API calls. However, the Joomla administrator backend remained accessible, allowing me to continue and complete the upgrade.

I then upgraded Joomla sequentially from Joomla 5.2 to Joomla 5.4 and finally to Joomla 6.2. After completing the upgrade, the website was running normally again.

I also checked System → Plugins in the Joomla administrator and found that Behaviour – Backward Compatibility 6 was enabled.

My recommendation is to keep the Behaviour – Backward Compatibility 6 plugin enabled after completing the upgrade. Extensions such as SP Page Builder and other third-party extensions may still depend on legacy Joomla APIs, so keeping this plugin enabled helps maintain compatibility.

Based on my local testing, I was able to complete the upgrade successfully without manually modifying the template's PHP files.

Mario, if your administrator backend is still accessible, you could try this approach on a staging site after taking a complete backup.

I hope this helps!

Best regards

Log in to reply.