• Resolved throwaway111

    (@throwaway111)


    Hi, I don’t need help with a particular page. Just reporting notices to be addressed. I recently enabled WP_DEBUG on a sandbox site. During routine maintenance this morning I deactivated Wordfence via the wp-cli interface, and these notices popped up:

    PHP Deprecated: KadenceWP\KadenceBlocks\StellarWP\Uplink\Pipeline\Pipeline::__construct(): Implicitly marking parameter $container as nullable is deprecated, the explicit nullable type must be used instead in /(path_redacted)/wp-content/plugins/kadence-blocks/vendor/vendor-prefixed/stellarwp/uplink/src/Uplink/Pipeline/Pipeline.php on line 57

    PHP Deprecated: KadenceWP\KadenceBlocks\StellarWP\Uplink\Resources\Plugin::register(): Implicitly marking parameter $license_class as nullable is deprecated, the explicit nullable type must be used instead in /(path_redacted)/wp-content/plugins/kadence-blocks/vendor/vendor-prefixed/stellarwp/uplink/src/Uplink/Resources/Plugin.php on line 177

    PHP Deprecated: KadenceWP\KadenceBlocks\StellarWP\Uplink\Resources\Resource::__construct(): Implicitly marking parameter $license_class as nullable is deprecated, the explicit nullable type must be used instead in /(path_redacted)/wp-content/plugins/kadence-blocks/vendor/vendor-prefixed/stellarwp/uplink/src/Uplink/Resources/Resource.php on line 133

    PHP Deprecated: KadenceWP\KadenceBlocks\StellarWP\Uplink\Resources\Resource::register(): Implicitly marking parameter $license_class as nullable is deprecated, the explicit nullable type must be used instead in /(path_redacted)/wp-content/plugins/kadence-blocks/vendor/vendor-prefixed/stellarwp/uplink/src/Uplink/Resources/Resource.php on line 405

    PHP Deprecated: KadenceWP\KadenceBlocks\StellarWP\Uplink\Resources\Resource::register_resource(): Implicitly marking parameter $license_class as nullable is deprecated, the explicit nullable type must be used instead in /(path_redacted)/wp-content/plugins/kadence-blocks/vendor/vendor-prefixed/stellarwp/uplink/src/Uplink/Resources/Resource.php on line 422

    PHP Deprecated: KadenceWP\KadenceBlocksPro\Query\Frontend_Filters\Abstract_Filter::__construct(): Implicitly marking parameter $html_renderer as nullable is deprecated, the explicit nullable type must be used instead in /(path_redacted)/wp-content/plugins/kadence-blocks-pro/includes/query/frontend-filters/class-abstract-filter.php on line 56

    PHP Deprecated: KadenceWP\KadenceBlocksPro\StellarWP\DB\DB::generate_results(): Implicitly marking parameter $query as nullable is deprecated, the explicit nullable type must be used instead in /(path_redacted)/wp-content/plugins/kadence-blocks-pro/vendor/vendor-prefixed/stellarwp/db/src/DB/DB.php on line 414

    PHP Deprecated: KadenceWP\KadenceBlocksPro\StellarWP\DB\DB::generate_col(): Implicitly marking parameter $query as nullable is deprecated, the explicit nullable type must be used instead in /(path_redacted)/wp-content/plugins/kadence-blocks-pro/vendor/vendor-prefixed/stellarwp/db/src/DB/DB.php on line 431

    (I know some of these are Kadence Blocks Pro notices. A contractor holds the license for us, so I do not have the login to open a ticket in pro support.)

    The site is on WP 6.9.4 and PHP 8.4, Kadence Blocks 3.6.6, and Kadence Pro 2.8.13.1.

Viewing 3 replies - 1 through 3 (of 3 total)
  • Plugin Support aapc

    (@aapc)

    Hello @throwaway111

    Thanks for reaching out and providing such a detailed report. We appreciate you taking the time to share these logs from your sandbox environment.

    The notices you’re seeing are PHP 8.4 Deprecation Notices. Specifically, PHP 8.4 no longer allows “implicitly nullable” parameters. These are “Deprecated” notices, not “Fatal Errors.” Your site’s functionality remains intact, and these notices will not break your pages.

    Since you have WP_DEBUG enabled, these notices are visible to help developers prepare for future PHP versions. On a live production site, we always recommend keeping display_errors off to prevent these from appearing to visitors.

    Our team is continually working on auditing the codebase (including the StellarWP libraries used in both the free and pro versions) to ensure full compatibility with newer versions PHP. I assure you we are on the case!

    Note that WordPress currently recommends PHP 8.3 and considers 8.4 and above as “beta” only. See here: https://make.wordpress.org/core/handbook/references/php-compatibility-and-wordpress-versions/

    Please let us know if you have any questions or if we can do anything else to assist.

    Thanks!
    Anthony

    Thread Starter throwaway111

    (@throwaway111)

    Thanks, I understand what these are. I’ve been a PHP developer for 20+ years.

    For context, I’ve been trying to figure out why Kadence Blocks is causing a plugin I wrote to register several custom post types to throw a “Function _load_textdomain_just_in_time was called incorrectly” message. The noise of other messages appearing in logs and elsewhere makes this harder to do.

    FWIW, I traced the issue to class-kadence-blocks-prebuilt-library.php, which gets an instance of the object as soon as the file loads — before textdomains are loaded — instead of using a hook such as init. It resolved when I tried wrapping it in a hook:

    function test_this_hook() {
    Kadence_Blocks_Prebuilt_Library::get_instance();
    }
    add_action( 'init', 'test_this_hook', 2 );

    The cron_schedules filter hook in this class appears to be where Kadence is bumping into my plugin, as the message fires when my own plugin adds custom cron schedules with translatable strings using the same hook.

    Plugin Support aapc

    (@aapc)

    Hi @throwaway111

    I have not been able to replicate your issue. If you’re still having trouble, feel free to open a ticket on the Kadence site for more in-depth support.

    I’ll go ahead and close this ticket.

    All the best!
    Anthony

Viewing 3 replies - 1 through 3 (of 3 total)

You must be logged in to reply to this topic.