I ran into this problem a year or so ago, and found a fix here.
- Open PHP.INI in a text editor of your choice (normally you can find php.ini in your php install dir)
- Change the recursion limit to 200x normal, that is, set:
pcre.recursion_limit=20000000
- Change the backtrack limit to 100x normal, that is, set:
pcre.backtrack_limit=10000000
- Stop and start the Apache (or IIS) service
As a warning note, if you push this too far and your server is underpowered, you may end up crashing PHP as it consumes the entire stack. Your host may not be too happy about that.
If you don’t have access to your php.ini, you can set these variables inside wp-config.php. Somewhere before the require_once(ABSPATH . 'wp-settings.php');
, maybe in the debug area (up to you), add these two lines:
@ini_set('pcre.backtrack_limit', 10000000);
@ini_set('pcre.recursion_limit', 20000000);