Migx php 8.0 nested getimage calls, is it a bug?

migx modx 2.8.4 php8.0

php7 works fine but on php 8 i get just a white screen on the front office nothing in error log if I do the following is nested inside this


inside parenttpl chunk we got


does not work however in 8 works fine in 7

anyone had similar issues?

busy on a mission upgrading sites to php 8 and modx 3. today i am doing php8

oh and [[+somevalue]] is def returning migx json data even in php 8

sorry to waste everyoens time it is a cache issue

need to call nested ones in php 8


strangely in 7 it works

Are you sure? This doesn’t make sense.

sure no,

but when I call the getImageList nested [[! works [[ does not work just blank screen no error

Is there something special (e.g. snippet calls) in the [[+somevalue]] data or just plain text?

If it is indeed a PHP 8 problem, then I don’t see why the problem disappears if the snippet is called uncached.
This just executes the same snippet a little bit later (and then for every subsequent request once again).

very wierd…

there are a few call on the page the first one for example is




[ texthere ] ( URLHERE )


I just switched back to php7 and site worked fine.
made getimage call uncacheed site works fine
made getimage call cacheed site works fine
switched to php 8 site works fine
clear cache all works fine
save a resource site dies white screen
call the getimage uncached site works fine

def some sort of cache problem i upgraded too modx 3 to see if problem presists it does

and it got worse cache never gets cleared. I have to delete the cache folder to see any change happening. I wonder what can cause this must be something on this site as other sites are running fine in modx 3 php8 on same server

played with all cache settings and I dotn think its the cache

it seems there is something that MIGX or rather getImage does not lilke in php 8 and modx 3

when you nest 2 getimage calls… together I cant figure it out

If you can provide the exact JSON-data and the chunk-templates that cause the problem, I can see if I can reproduce the issue.

And please use code blocks to post the data:

```//3 backticks on a line at the beginning
```//3 backticks on a line at the end

hi already did so if I load



but if I copy and pate the content of [[+somevalue]] and load that into

&value=paste values of [[+somevalue]]

it works which is strange

I am busy redoing my whole migx setup as there must be an issues somehere in there

ok I found the culprit and it might have been a combination of things but I got it to work

Wanted to upgrade site from php7 to php8.1 PLUS upgrade from modx 2.8.3 to 3.0.1

After upgrade everything died, I first thought its getImage, then I thought, its cache or a PHP 7 - 8 issue.

1st problem getImage had was parsing HTML that strange enough worked in php 7 but in php 8 did not parse and I got a white blank screen.

Hence I removed the richtext plugin in migx and change it to a plaintext that is getting cleaned with an output modifier.

Secondly I had way to many bad conditional statements esp if then. According to this great article by jason Tags as the Result or How Conditionals are like Mosquitoes | MODX
I fixed them all and changed them from


to this


this especially got rid of many errors in the template chunk of the nested getImage MIGX

I also applied this fix by joshua that might have fixed more output filter issues

now its working but had to rewrite alot of stuff

thanks for the help everyone

Hey @servingpixels, as I’ve made an alternative patch for the parsing issue in 3.0.1, would you be so kind to please try Refactor input filter parsing to properly support nested tags by Mark-H · Pull Request #16288 · modxcms/revolution · GitHub and report back if that still works for your use case?

1 Like

thanks I will try it as soon as I get a gap

many thanks was that patch added to 3.02?.

it works my side on the sites i been testing.however after testing I upgraded to 3.0.2

also note that I found where some nested tags dont work

bad errors eg




better no error



might be heavier in terms of processing but I dont get errors which are prob due to regex?