=== Performance Tweaks === Contributors: rhoekman Tags: performance, speed, pagespeed, optimize Requires at least: 6.0 Tested up to: 6.8.2 Requires PHP: 8.0 Stable tag: 0.7.3 License: GPLv2 (or later) WordPress Performance Tweaks == Description == Simple but effective performance tweaks for WordPress—now with a polished, tabbed settings UI. Features are grouped like your workflow: Scripts & Assets, Network, Security, Performance & Admin, and Database. = Scripts & Assets = * Contact Form 7 Smart Loader — Only loads CF7 assets on pages with a form. * CF7 reCAPTCHA Smart Loader — Dequeues reCAPTCHA when no CF7 form is present. * Disable Advanced Custom Fields on Frontend — Stops ACF assets from loading on the frontend. * Emoji Unloader — Removes Emoji CSS and JavaScript. * Defer JavaScript — Adds defer attribute to eligible scripts. * Async JavaScript — Adds async attribute to eligible scripts. * Async/Defer Exclude Handles — A textarea to exclude script handles from async/defer. * Remove Query Strings — Strips ?ver= from CSS/JS URLs to improve CDN caching. * Block CSS Smart Loader (classic themes) — Dequeues block CSS on singular pages without blocks. * Separate Core Block CSS (WP 5.8+) — Opt-in to load only the CSS for blocks used on the page. * Disable Dashicons for Visitors — Removes dashicons for non-logged-in users. * Disable jQuery Migrate (frontend) — Drops jquery-migrate from frontend dependencies. * Boost Hero Image (fetchpriority) — Adds fetchpriority="high" to the first content image on singular pages. * Lazy‑load iframes in Content — Ensures iframes in post content use loading="lazy". * WooCommerce Smart Loader — Loads WC CSS/JS only on WooCommerce pages (shop, product, cart, checkout, account). = Network = * DNS Single Post Prefetch — Prefetch homepage on singular pages to speed return navigation (HTTP/2). * Resource Hints Hosts — Add domains for dns-prefetch and preconnect (one per line). * Google Fonts Preconnect — Adds preconnect hints for fonts.googleapis.com and fonts.gstatic.com. = Security = * Disable XML-RPC — Blocks the XML-RPC endpoint unless you need it. * Disable WP Embeds / oEmbed — Removes discovery links and wp-embed script. * Head Cleanup — Removes RSD, WLW, generator, shortlink, and extra feed links. = Performance & Admin = * Disable WordPress Heartbeat (Frontend) — Keep editor autosave, reduce frontend pings. * Heartbeat Interval — Set between 15–120 seconds. * WP‑Cron Guidance — Advisory copy to move cron to a real system cron. = Database = * Limit Post Revisions — Define WP_POST_REVISIONS to 5. * Autosave Interval (advisory) — Suggest a wp-config constant. * Empty Trash Days (advisory) — Suggest a wp-config constant. = UI/UX = * Tabbed settings with keyboard navigation and ARIA roles. * Card layout, helpful tooltips, and consistent spacing. * Sticky save bar with “unsaved changes” hint. * “Reset all settings” link (with nonce) to clear options without uninstalling. == Installation == = Installation from within WordPress = 1. Visit **Plugins > Add New**. 2. Search for **Performance Tweaks**. 3. Install and activate the Performance Tweaks plugin. = Manual installation = 1. Upload the entire `rh-performance` folder to the `/wp-content/plugins/` directory. 2. Visit **Plugins**. 3. Activate the Performance Tweaks plugin. = After activation = 1. Visit the new **Settings > Performance Tweaks** menu. 2. Use the tabs to navigate categories and enable only what you need. 3. Optional: Click “Reset all settings” to clear options (no uninstall required). == Changelog == = 0.7.3 = Major update with new features and a refined UI. **Features** * WooCommerce Smart Loader (only load WC assets on Woo pages) * Separate Core Block CSS (WP 5.8+) * Block CSS Smart Loader for classic themes * Disable Dashicons for visitors * Disable jQuery Migrate on the frontend * Resource Hints hosts + Google Fonts preconnect * Heartbeat interval + frontend-only disable * Hero image fetchpriority and iframe lazy‑loading * CF7 reCAPTCHA smart loader * Async/Defer exclude handles **Security/Head** * Disable WP Embeds / oEmbed discovery * Head cleanup (RSD, WLW, generator, shortlink, extra feeds) **UI/UX** * Tabbed settings with accessible ARIA roles and keyboard nav * Card layout and spacing improvements * Sticky “unsaved changes” save bar * “Reset all settings” helper (nonce-protected) = 0.6.6 = Tested with WordPress 6.7 = 0.6.5 = Tested with latest WordPress and PHP 8.1 = 0.6.4 = **Features** Added an option to limit Post Revisions to a maximum of 5 = 0.6.3 = **Bug Fixes** * The 'defer' tag for JavaScript is now only inserted on the frontend.