• Resolved slackarse

    (@slackarse)


    Hi,

    We have a multisite installation, and a lot of posts sceduled to expire fail. It is a fatal error in PHP 8.0, but only a warning with PHP 7.4.

    It appears to be caused in /src/Modules/Expirator/Models/ExpirablePostModel.php on line 215 in release version 2.8.0 where the variable is set to false, instead of an array if no categories are found in expiration options.

    In the logs, we are seeing this error:

    PHP Fatal error:  Uncaught TypeError: array_unique(): Argument #1 ($array) must be of type array, bool given in /wp-content/plugins/post-expirator/src/Modules/Expirator/Models/ExpirablePostModel.php:222
    Stack trace:
    #0 /wp-content/plugins/post-expirator/src/Modules/Expirator/Models/ExpirablePostModel.php(222): array_unique()
    #1 /wp-content/plugins/post-expirator/src/Modules/Expirator/Models/ExpirablePostModel.php(144): PublishPressFuture\Modules\Expirator\Models\ExpirablePostModel->getExpirationCategoryIDs()
    #2 /wp-content/plugins/post-expirator/src/Modules/Expirator/Models/ExpirablePostModel.php(363): PublishPressFuture\Modules\Expirator\Models\ExpirablePostModel->getExpirationDataAsArray()
    #3 /wp-content/plugins/post-expirator/src/Modules/Expirator/Controllers/ExpirationController.php(121): PublishPressFuture\Modules\Expirator\Models\ExpirablePostModel->expire()
    #4 /wp-includes/class-wp-hook.php(308): PublishPressFuture\Modules\Expirator\Controllers\ExpirationController->onActionRunPostExpiration()
    #5 /wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters()
    #6 /wp-includes/plugin.php(565): WP_Hook->do_action()
    #7 /wp-cron.php(188): do_action_ref_array()
    #8 {main}
      thrown in /wp-content/plugins/post-expirator/src/Modules/Expirator/Models/ExpirablePostModel.php on line 222
Viewing 1 replies (of 1 total)
Viewing 1 replies (of 1 total)
  • The topic ‘Fatal Error preventing expiry.’ is closed to new replies.