plugin-icon

Defer for Contact Form 7

Takes Contact Form 7 off the critical rendering path: moves its head scripts to the footer and loads the form CSS asynchronously. No PageSpeed hit.
גרסה
1.0.0
עודכן לאחרונה
Jul 1, 2026
Defer for Contact Form 7

On every page Contact Form 7 loads its dependencies (wp-hooks, wp-i18n) and its CSS into the <head>, blocking first paint. This plugin fixes that:

  • Defer CF7 core — moves wp-hooks/wp-i18n to the footer (you cannot defer them: an inline wp.i18n.setLocaleData block runs synchronously and would throw "wp is not defined"). CF7's scripts leave the critical path.
  • Async CSS — the form stylesheet loads via media=print + onload-swap.

Both optimizations are idempotent and safe on every page. Strict dependency: with Contact Form 7 inactive, the plugin does nothing.

A note on jQuery

This plugin does NOT defer jQuery — on purpose. Deferring jQuery is only safe when EVERY jQuery-dependent script on the site is also deferred or in the footer; on an arbitrary site that is not guaranteed and breaks inline scripts in the head.

Pro version

Defer for Contact Form 7 Pro adds lazy-loaded Google reCAPTCHA v3 — spam protection without a PageSpeed hit:

  • Google's api.js loads only on the first interaction with a form, so it never appears in Lighthouse/PSI.
  • The score check is server-side; a fresh single-use token is fetched for every submission.
  • The badge is hidden with the required Google disclaimer (GDPR-friendly); configurable score threshold and action label.

The free version stays fully functional on its own.

Support

Questions, bug reports or feature requests: https://www.linkedin.com/in/vitalii-ryabinin/

חינםבתוכניות בתשלום
בביצוע ההתקנה, אנחנו מקבלים את הסכמתך לתנאי השירות של WordPress.com ולתנאים של התוסף של הצד השלישי.
נבדקו עד
WordPress 7.0
תוסף זה זמין להורדה ולשימוש דרך שברשותך.