Skip to content

v7.41.2

Choose a tag to compare

@ccmrik ccmrik released this 08 May 02:36
· 7 commits to main since this release

Fix wp / jQuery undefined errors from defer/delay

Root cause

WordPress emits inline scripts via wp_add_inline_script(handle, ..., 'after') — these run at parse time and reference symbols (wp.i18n, jQuery) defined by the parent script. defer_js had no always-exclude list, so it was deferring wp-i18n / wp-a11y / wp-hooks, which made the inline _after companions throw ReferenceErrors.

Three of the four console errors on a real site traced to this exact pattern.

Plugin-side fixes

  • New ccm_tools_perf_has_inline_companion($handle) helper inspects $wp_scripts->registered[$handle]->extra['after'|'before'] and returns true if any inline companion is registered. Both defer_js and delay_js now skip these handles automatically.
  • Added wp-a11y and wp-polyfill to the always-exclude list for both defer and delay.

Visual check

The dynamic-content filter previously dismissed any issue mentioning "carousel" or "slider" — but the AI was correctly flagging "carousel JS not initializing, testimonials stacked vertically" as a real regression. New filter overrides the dismissal when breakage words (not initializing, broken, regression, stacked vertically, falling back, etc.) or plugin setting names appear.