Issues with ModX 2.8.8 -.3.0.6 and php 8.+

Title: Issues Updating MODX from 2.7.3 to 2.8.8 and 3.0.6 with PHP 8+

Post:

Hello everyone,

I’ve been facing a persistent issue while updating MODX and attempting to use PHP 8.0 or higher. The problem first appeared when updating from MODX 2.7.3 to 2.8.8, and unfortunately, it persists even after updating to 3.0.6. Under PHP 8.0+, the frontend shows a blank page with no content, and the MODX manager becomes non-functional. When I revert to PHP 7.4, everything works perfectly.

Update Path

  1. Initially updated from 2.7.3 to 2.8.8. The PHP 8+ issue appeared at this stage.

  2. Updated further to 3.0.6, hoping this would resolve the problem, but the issue remains.

Server Details

MODX Version: Attempted updates from 2.7.3 to 2.8.8 and 3.0.6

PHP Version: Issues with 8.0, 8.1, and 8.2; works fine with 7.4

Server Environment: Shared hosting

Extensions: According to phpinfo(), all required extensions (like fileinfo, curl, etc.) are enabled.

Installed Extras

These are the extras currently installed on the site:

Simple Search 3.0.0

TagLister 1.1.7

TinyMCE 4.3.4

TinyMCE Rich Text Editor 2.0.9

VersionX 1.1.0-beta

Wayfinder 2.3.3

Activation Email 1.2.0

Archivist 1.2.5

Articles 2.0.0

Breadcrumb 1.4.4

Client Config 2.4.0

CodeMirror 2.2.1

ColorPicker 1.0.2-rc2

FastField 1.4.0

FirstChildRedirect 2.4.0

FormIt 2.2.0

getPage 1.2.4

getResourceField 1.0.3

getResources 1.7.1

Login 1.9.14

MIGX 2.9.0

pdoTools 3.0.2

pThumb 2.3.3

Observations

• The issue starts as early as MODX 2.8.8 under PHP 8+ and continues with 3.0.6.

• I’ve checked the MODX error log and the PHP error log, but neither provides a clear indication of what’s causing the blank pages.

• I’ve tested disabling some extras and switching to the default MODX theme, but the issue persists.

• All required PHP extensions are enabled, and the server configuration is confirmed to support MODX.

Questions

  1. Has anyone else experienced similar issues when updating from 2.7.3 to 2.8.8 or 3.0.6 under PHP 8+?

  2. Are there specific extras from the list above that are known to cause compatibility issues with PHP 8?

  3. What additional steps can I take to debug or resolve this problem?

I would greatly appreciate any advice or suggestions. If further details are needed, I’m happy to provide them.

Thanks in advance!

The cause of the problem is most likely one of the installed extras and not the MODX core code.

When you open the developer tools in the browser and make the request, what is the HTTP response status code of the request? Is it 500?

If it’s a 500 error, then something should get logged to the PHP error log (with a common setting for error_reporting).


There should’t be an issue with PHP 8 and widely used extras (like e.g. Wayfinder, FormIt, getPage, getResources, Login, MIGX, pdoTools, pThumb, etc.).

Make sure that the versions of all installed extras are up-to-date. (E.g. MIGX 2.9.0 is old.)

FastField is not compatible with MODX 3. (But it’s a part of pdoTools. As you have pdoTools installed, you don’t need it.)

TinyMCE 4.3.4 is quite old and unmaintained. Why is it still installed, if you also use TinyMCE Rich Text Editor 2.0.9?

Hello Harry,

Thank you very much for your suggestions. I had assumed that simply downloading the updates via the Package Manager would suffice. I am currently reinstalling all the extras.

However, I’m running into an issue with TinyMCE 4.3.4. I try to uninstall it, but it remains installed. I receive the following error message:

[2024-12-11 14:34:32] (ERROR in xPDO::getService @ /www/htdocs/xxx.de/neu/core/xpdo/xpdo.class.php : 1235) modRestClient::__construct is deprecated since version 2.3.0. Use the modRest classes instead.
[2024-12-11 14:34:32] (ERROR in modRestCurlClient::__construct @ /www/htdocs/xxx.de/neu/core/model/modx/rest/modrestcurlclient.class.php : 26) modRestClient::__construct is deprecated since version 2.3.0. Use the modRest classes instead.

I’ll continue testing the rest now. Thanks again for your help. It’s been quite a while since I last dealt with this.

Translate by chatGPT, just in case it’s funny english ;-D Olaf

I don’t think you have to reinstall the extras. Just use the “Check For Updates” in the Package Management to make sure the installed versions are up-to-date.


The class modRestClient was removed in MODX 3.
But I don’t think TinyMCE 4.3.4 is using modRest. Maybe the error is from another extra.