Skip Navigation

[Resolved] WordPress built-in feature detected when a plugin caused a fatal error

This is the technical support forum for Toolset - a suite of plugins for developing WordPress sites without writing PHP.

Everyone can read this forum, but only Toolset clients can post in it. Toolset support works 6 days per week, 19 hours per day.

No supporters are available to work today on Toolset forum. Feel free to create tickets and we will handle it as soon as we are online. Thank you for your understanding.

This topic contains 14 replies, has 2 voices.

Last updated by Christopher Amirian 1 year, 12 months ago.

Assisted by: Christopher Amirian.

Author
Posts
#2499215

Since WordPress 5.2 there is a built-in feature that detects when a plugin or theme causes a fatal error on your site.In this case, WordPress caught an error with one of your plugins, Toolset Types.
An error of type E_ERROR was caused in line 325 of the file /var/www/web/wp-content/plugins/types/vendor/toolset/toolset-common/toolset-forms/classes/class.conditional.php. Error message: Uncaught TypeError: array_map(): Argument #2 ($array) must be of type array, null given in /var/www/web/wp-content/plugins/types/vendor/toolset/toolset-common/toolset-forms/classes/class.conditional.php:325
Stack trace:
#0 /var/www/web/wp-content/plugins/types/vendor/toolset/toolset-common/toolset-forms/classes/class.conditional.php(325): array_map('serialize', NULL)
#1 /var/www/web/wp-content/plugins/types/vendor/toolset/toolset-common/toolset-forms/classes/class.conditional.php(263): WPToolset_Forms_Conditional->array_unique_md(NULL)
#2 /var/www/web/wp-content/plugins/types/vendor/toolset/toolset-common/toolset-forms/classes/class.conditional.php(335): WPToolset_Forms_Conditional->_parseData()
#3 /var/www/web/wp-includes/class-wp-hook.php(308): WPToolset_Forms_Conditional->renderJsonData('')
#4 /var/www/web/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters(NULL, Array)
#5 /var/www/web/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
#6 /var/www/web/wp-admin/admin-footer.php(95): do_action('admin_print_foo...')
#7 /var/www/web/wp-admin/post.php(369): require_once('/var/www/web/wp...')
#8 {main}
thrown

#2500235

Christopher Amirian
Supporter

Languages: English (English )

Hi there,

Would you please update Toolset Types to version 3.4.17 and see if it fixes the issue?

If not, kindly follow the steps below:

- IMPORTANT STEP! Create a backup of your website.
- Go to "WordPress Dashboard > Plugins" and deactivate all plugins except Toolset and Toolset add-ons.
- Check if you can still recreate the issue.
- If not, re-activate your plugins one by one and check the issue each time to find out the plugin that causes the problem.

Thank you.

#2500283

How do I install an update when my site does not say that I need an update, If I click update nothing happens.

#2500287

sorry just found out how to install, will check and get back to you

#2500573

Christopher Amirian
Supporter

Languages: English (English )

Hi there,

Thank you. Get back to us if you still have the issue after the update.

#2500665

When seeking help with this issue, you may be asked for some of the following information:
WordPress version 6.1.1
Active theme: Flexform (version 1.8.53)
Current plugin: Toolset Types (version 3.4.17)
PHP version 8.0.25

Error Details
=============
An error of type E_ERROR was caused in line 325 of the file /var/www/web/wp-content/plugins/types/vendor/toolset/toolset-common/toolset-forms/classes/class.conditional.php. Error message: Uncaught TypeError: array_map(): Argument #2 ($array) must be of type array, null given in /var/www/web/wp-content/plugins/types/vendor/toolset/toolset-common/toolset-forms/classes/class.conditional.php:325
Stack trace:
#0 /var/www/web/wp-content/plugins/types/vendor/toolset/toolset-common/toolset-forms/classes/class.conditional.php(325): array_map('serialize', NULL)
#1 /var/www/web/wp-content/plugins/types/vendor/toolset/toolset-common/toolset-forms/classes/class.conditional.php(263): WPToolset_Forms_Conditional->array_unique_md(NULL)
#2 /var/www/web/wp-content/plugins/types/vendor/toolset/toolset-common/toolset-forms/classes/class.conditional.php(335): WPToolset_Forms_Conditional->_parseData()
#3 /var/www/web/wp-includes/class-wp-hook.php(308): WPToolset_Forms_Conditional->renderJsonData('')
#4 /var/www/web/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters(NULL, Array)
#5 /var/www/web/wp-includes/plugin.php(517): WP_Hook->do_action(Array)
#6 /var/www/web/wp-admin/admin-footer.php(95): do_action('admin_print_foo...')
#7 /var/www/web/wp-admin/post.php(369): require_once('/var/www/web/wp...')
#8 {main}
thrown

#2500883

Christopher Amirian
Supporter

Languages: English (English )

Hi there,

Thank you very much this seems to be a compatibility issue that needs to be checked further.

Would you please provide a package of your website so that we can test it on our server for more investigation?

Please follow the steps below to provide it:

https://toolset.com/faq/provide-supporters-copy-site/

Thank you.

#2501417

Christopher Amirian
Supporter

Languages: English (English )

Hi there,

I see that it is stuck on 60% waited for a while but it is not changing.

I checked the WordPress dashboard and it seems the plugin works ok on PHP 8 may I know what are the steps that cause the error to show?

I do not see that error on the website

Thanks

#2502135

Christopher Amirian
Supporter

Languages: English (English )

Hi there,

I meant the duplicator is stuck in 60% and not showing the website to be able to get it. But now we have another issue.

The WordPress email that you get does not tell WHEN the issue happens. By that, I mean what are the steps that cause the error so we do not know where to check.

I'd appreciate it if you can follow the steps below to enable the WordPress debug mode, then if the issue happens you will see when it happen and get back to us so that we can check:

Would you please access your website files and edit the "wp-config.php" file on the root folder of your WordPress installation and add the code below into the file:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', true );

Please add the code above the line below:

/* That's all, stop editing! Happy blogging. */

For more information:
https://wpml.org/documentation/support/debugging-wpml/

I also made the previous reply private to hide sensitive information.

Thank you.

#2502425

Thanks for that. I copied the 3 lines into the config file and then visited the site, from the past error messages I visited hidden link and I got the same email regarding the fatal error. The site continues to work.

#2502777

Christopher Amirian
Supporter

Languages: English (English )

Hi there,

Thank you for the information. I managed to use the All in one Migration plugin to create a copy of the website.

I checked and the same issue happens on my installation with PHP 8.

I reported this to the second-tier and waiting for their answer.

I will update you as soon as I have news.

Thank you.

#2502897

Thanks, I am glad you managed to recreate the error and get a copy of the site.

#2504387

Christopher Amirian
Supporter

Languages: English (English )

Screenshot-2022-11-24-at-11.57.13.png

Hi there,

The second tier has an answer. The issue is happening with warnings in PHP 7.4 too, the issue is a Fatal Error in PHP 8 and the reason is:

If you check the custom field group assigned to the Band post type you will see that it contains a custom field “reference 1”, and if you edit it and look at the display conditions, it includes some bogus condition that is responsible for triggering the problems.

Delete the condition, the issue is fixed.

Please check the screenshot

Thank you.

#2504551

Thankyou Christopher, I presume you meant Representative 1. I went into to that custom field and deleted the condition. Hopefully that will save the issue for now, I would never have found that on my own.
Thanks

#2504775

Christopher Amirian
Supporter

Languages: English (English )

You're welcome 🙂