{"id":19009500,"date":"2026-09-02T11:06:49","date_gmt":"2026-09-02T11:06:49","guid":{"rendered":"https:\/\/wordpress.org\/support\/topic\/notification-function-called-incorrectly\/"},"modified":"2026-09-02T11:15:00","modified_gmt":"2026-09-02T11:15:00","slug":"notification-function-called-incorrectly","status":"publish","type":"topic","link":"https:\/\/wordpress.org\/support\/topic\/notification-function-called-incorrectly\/","title":{"rendered":"Notification &#8220;Function called incorrectly&#8221;"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Query Monitor reports several &#8220;called incorrectly&#8221; notices on every page load when CTX Feed \/ Product Feed for WooCommerce (v8.0.9) is active. All originate from the same root cause: the plugin bootstraps on the plugins_loaded hook, too early for both WordPress translations and Action Scheduler.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1) Translation loading for the woo-feed domain (and even the woocommerce domain) is triggered too early, via CTXFeed\\V8\\Dashboard\\WidgetRegistry::registerDefaults() calling __() during DashboardServiceProvider::boot() (Dashboard\/WidgetRegistry.php:45).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2) CTXFeed\\V8\\Feed\\FeedServiceProvider::register_recurring_backfill() (Feed\/FeedServiceProvider.php:277 and :283) calls as_has_scheduled_action() and as_schedule_single_action() before the Action Scheduler data store is initialized. This looks more serious than a log notice \u2014 it may mean the recurring backfill action isn&#8217;t reliably scheduled.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Both chains trace back to Bootstrap::init() -&gt; boot_v8() running on plugins_loaded (woo-feed.php:254). Deferring the relevant service provider boot logic to init (or later, after Action Scheduler is ready) should resolve all four notices.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Thanks,<br \/>Dmitry<\/p>\n","protected":false},"template":"","class_list":["post-19009500","topic","type-topic","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/topic\/19009500","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/topic"}],"about":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/types\/topic"}],"version-history":[{"count":1,"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/topic\/19009500\/revisions"}],"predecessor-version":[{"id":19009506,"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/topic\/19009500\/revisions\/19009506"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/support\/wp-json\/wp\/v2\/media?parent=19009500"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}