• Resolved alcym

    (@alcym)


    After updating to versions 4.0 and then 4.0.1, the Query Monitor panel fails to open when clicked in the admin toolbar. Rolling back to 4.0.0 has the same issue. Version 3.20.4 works totally fine.

    in the page source, the inline script reads var QueryMonitorData = ; with no data between the equals sign and semicolon. This causes an Uncaught SyntaxError in the browser, followed by Uncaught ReferenceError: QueryMonitorData is not defined, which prevents the panel from loading. The error isn’t browser specific – it occurs regardless.

    Environment: PHP 8.3, WordPress latest, no JS minification or caching plugins active. Server and page caches cleared. Multiple browsers tested. The QM admin top bar tab simply is null.

    • This topic was modified 1 month ago by alcym.
Viewing 7 replies - 16 through 22 (of 22 total)
  • mrgrooves

    (@mrgrooves)

    Alright! Thank you very much, @johnbillion . The issue is now fixed for me. You’ve done a marvelous job with the plugin overall. It is amazing. Thank you so much!

    Thank you for the quick update. It fixed the issue.

    I noticed that now it gives the following error:

    PHP Deprecated: Creation of dynamic property QM_Data_Stack_Frame::$calling_line is deprecated in /wp-content/plugins/query-monitor/classes/ArrayAccess.php on line 52

    Till Krüss

    (@tillkruess)

    @simrandeep Do you have a full stack trace for that error?

    I don’t have the full stack trace but I was able to fix the error by property_exists check (if ( is_string( $offset ) && property_exists( $this, $offset ) ) {) on L51 in ArrayAccess.php file. Here is the explanation from Claude Code:

    The issue is in offsetGet at line 52. When returning a reference to $this->$offset where the property (e.g. calling_line) doesn’t exist on the class, PHP 8.2+ implicitly creates a dynamic property and throws the deprecation. The fix is to check property_exists first:

    Plugin Author John Blackbourn

    (@johnbillion)

    WordPress Core Developer

    The calling_line property no longer exists. The PHP error is actually correct in this regard, but I will see about adding some compatibility for this property.

    Plugin Author John Blackbourn

    (@johnbillion)

    WordPress Core Developer

    The original problem reported in this thread has now been fixed, so please use separate threads for any further issues. Thanks everyone!

Viewing 7 replies - 16 through 22 (of 22 total)

You must be logged in to reply to this topic.