
A ‘Do It Yourself’ WordPress Page Speed Optimization Pack.
Optimizing web pages is really just about controlling how assets are delivered.
Optimize your site further. Load faster on GTmetrix, Get better scores on Google Page Speed Insight.
Control your CSS & JavaScripts Delivery: Load CSS Asynchronously, Delay CSS & JavaScript until User Interaction, Remove Unused CSS & JavaScript Files, Preload Critical CSS & JavaScript, Defer JavaScripts, and more.
You can choose each CSS & JavaScripts individually and what type of execution is required per each post types.
This plugin inspired by the mighty Flying Scripts from Gijo Varghese. Using HTML Dom Parser to manipulate your page’s HTML, so we can simply use the keyword of the assets to target them.
Load CSS Asynchronously — load any CSS file(s) asynchronously on selected post/page types.
Delay CSS and JavaScripts until User Interaction — delay any CSS/JavaScripts load until user interaction on selected post/page types.
Note:
Defer JavaScripts — defer loading any JavaScript file(s) on selected post/page types.
Advance Defer JavaScripts — hold any JavaScript file(s) load until everything else has been loaded. Adapted from the legendary varvy’s defer JavaScripts method *recommended for defer loading 3rd party scripts like ads, pixels, and trackers
Preload Critical CSS, JavaScripts, and Font Files — preload any critical CSS/JavaScript/Font file(s) on selected post/page types.
Inline CSS and JavaScript Files — inline any critical CSS/JavaScript file(s) on selected post/page types. *warning: Inlining multiple / large files might slow down your site’s performance. Enabling this without using a caching system is generally not recommended.
Remove Unused CSS and JavaScripts Files — remove any unused CSS/JavaScripts file(s) on selected post/page types.
Use case:
Load Gutenberg CSS conditionally — This feature will make the combined CSS (wp-block-library) removed and your page will only load the CSS of each block that you use on the page (and only if you use one of the core blocks!). Each CSS of the core blocks will only get enqueued when the block gets rendered on a page. This will save you from worrying if you still need to use the native Gutenberg core blocks in some of your pages.
Note: the inline “global-styles” will also only load if you use one of the core blocks when you combine this feature with the Remove FSE Global Styles feature.
Remove FSE Global Styles — Remove WP “global-styles-inline-css”. Note: this will still conditionally loaded if you enable Load Gutenberg CSS conditionally feature.
Remove SVG Duotone Filter.
Filter Google Fonts — Filter the Google Font Characters to use most common characters only. In most font families, this will significantly reduce the font file size. *remember to use the web-safe font that is most similar to the font you are using as the font family fallback or you can simply modify the default character using the provided filter.
Combined Google Fonts — Combine google fonts css into one single line *only works for google font url(s) that are using the latest Google Font API (css2).
Select Font Display — Choose the best google fonts’ font-display strategy for your website.
Remove Passive Listener Warnings — Remove the “Does not use passive listeners to improve scrolling performance” warning on Google PageSpeed Insights
Prefetch Pages — Prefetch in view links so visitors can switch pages (more) instantly. *based on Gijo’s Flying Pages
Optimize WC Cart Fragments — Disable WC Cart Fragments, only when it’s empty. *based on Optimocha’s (Barış Ünver) Disable Cart Fragments
Remove WooCommerce Blocks CSS.
Disable jQuery Migrate.
Disable WP Embeds.
Disable WP Emojis.
Lazyload, Preload, and More — Add Lazyload, Preload, and More features. This is a non JavaScript version of Lazyload, preload, and more. *lazyload applied for images/iframes tag only. if you need to lazyload css background images, use the Lazyload, preload, and more plugin instead.
A simple tutorial of how to use this plugin: How to use Optmize More Plugin (Indonesian Version: Cara mempercepat loading WordPress dengan plugin Optimize More).
Big thanks to Gijo Varghese, without his codes in Flying Scripts, I can never be able to build this plugin. Thanks Gijo! 🙂
This plugin should works well with any caching plugins.
This plugin only adds 1 extra row to your database. And it will self delete upon uninstallation.
I built this plugin to optimize my Clients’ site. And I can get a very good scores even before activating my caching plugin.
By default, the delay JavaScripts and CSS are configured to user interaction based. But you can change that using filter:
For delay CSS, e.g.:
add_filter( 'om_delay_css_time', function($om_delay_css_time) { return '3*1000'; } ); For delay JavaScripts, e.g.:
add_filter( 'om_delay_css_time', function($om_delay_css_time) { return '3*1000'; } ); or if you want to change it for specific page only:
For delay CSS, e.g.:
add_filter( 'om_delay_css_time', function($om_delay_css_time) { if (is_front_page()) { return '3*1000'; } else { return $om_delay_css_time; } } ); For delay JavaScripts e.g.:
add_filter( 'om_delay_js_time', function($om_delay_js_time) { if (is_front_page()) { return '3*1000'; } else { return $om_delay_js_time; } } ); If you prefer to use ‘exclusions’ method, simply delay all JavaScript files using “.js” keyword, and use the provided filters to exclude specific JavaScript files:
Example filter to add exclude list for the whole site (general):
add_filter('delay_js_exclude_list_default', function($exclusion_list) { $exclusion_list[] = 'jquery-core'; $exclusion_list[] = 'js-cookie'; $exclusion_list[] = 'wc-add-to-cart-js'; return $exclusion_list; }); Example filter to add exclude list for Homepage option:
add_filter('delay_js_exclude_list_front_page', function($exclusion_list) { $exclusion_list[] = 'jquery'; $exclusion_list[] = 'custom-js'; return $exclusion_list; }); Example filter to add exclude list for Custom Page option:
add_filter('delay_js_exclude_list_pages', function($exclusion_list) { $exclusion_list[] = 'jquery'; $exclusion_list[] = 'another-js'; return $exclusion_list; }); Example filter to add exclude list for Archives option:
add_filter('delay_js_exclude_list_archives', function($exclusion_list) { $exclusion_list[] = 'jquery'; $exclusion_list[] = 'another-js'; return $exclusion_list; }); Example filter to add exclude list for Singular option:
add_filter('delay_js_exclude_list_singular', function($exclusion_list) { $exclusion_list[] = 'jquery'; $exclusion_list[] = 'another-js'; return $exclusion_list; }); Example filter to add exclude list for WooCommerce Products option:
add_filter('delay_js_exclude_list_wc_product', function($exclusion_list) { $exclusion_list[] = 'jquery'; $exclusion_list[] = 'another-js'; return $exclusion_list; }); Example filter to add exclude list for WooCommerce Archives option:
add_filter('delay_js_exclude_list_wc_archives', function($exclusion_list) { $exclusion_list[] = 'jquery'; $exclusion_list[] = 'another-js'; return $exclusion_list; }); By default, this feature filtered the Google Font Characters to only use:
1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz%20!&"#$%\'()*+,-./:;<=>?@[\\]^_`{|}~%26≤≥±√$€£¥•©®™ You can modify the characters using this filter:
Example filter to add some extra characters:
add_filter('font_characters', function ($fontCharacters) { // Modify the characters as needed $fontCharacters .= 'éèêñ'; return $fontCharacters; }); Example filter to fully use your preferred characters:
add_filter('font_characters', function ($fontCharacters) { // Modify the characters as needed $fontCharacters = '1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz%20!"#$%\'()*+,-./:;'; return $fontCharacters; }); *note the ‘dot’ difference
Example filter to add extra lazyload exclude list:
add_filter( 'opm_exclude_lazy_class', function($opm_exclude_lazy_class) { return array( 'my-logo', 'my-hero-img', 'exclude-lazy' ); } ); Example filter to change the image sizes for preload featured image:
add_filter( 'opm_featured_image_size', function($image_size, $post) { if ( is_singular( 'post' ) ) { return 'large'; } elseif ( is_singular( 'product' ) ) { return 'full'; } else { return $image_size; } }, 10, 2 );
Still having trouble to speed up your site and need someone to do that for you? Try my WordPress Speed Optimization Service.
Starting from $0 per month.
Rating
Reviewers
6 reviews
Tags
Developed By
Arya Dhiratara
Quick & Easy
Common Ninja has a large selection of powerful Wordpress plugins that are easy to use, fully customizable, mobile-friendly and rich with features — so be sure to check them out!
Testimonial plugins for Wordpress
Galleries plugins for Wordpress
SEO plugins for Wordpress
Contact Form plugins for Wordpress
Forms plugins for Wordpress
Social Feeds plugins for Wordpress
Social Sharing plugins for Wordpress
Events Calendar plugins for Wordpress
Sliders plugins for Wordpress
Analytics plugins for Wordpress
Reviews plugins for Wordpress
Comments plugins for Wordpress
Portfolio plugins for Wordpress
Maps plugins for Wordpress
Security plugins for Wordpress
Translation plugins for Wordpress
Ads plugins for Wordpress
Video Player plugins for Wordpress
Music Player plugins for Wordpress
Backup plugins for Wordpress
Privacy plugins for Wordpress
Optimize plugins for Wordpress
Chat plugins for Wordpress
Countdown plugins for Wordpress
Email Marketing plugins for Wordpress
Tabs plugins for Wordpress
Membership plugins for Wordpress
popup plugins for Wordpress
SiteMap plugins for Wordpress
Payment plugins for Wordpress
Coming Soon plugins for Wordpress
Ecommerce plugins for Wordpress
Customer Support plugins for Wordpress
Inventory plugins for Wordpress
Video Player plugins for Wordpress
Testimonials plugins for Wordpress
Tabs plugins for Wordpress
Social Sharing plugins for Wordpress
Social Feeds plugins for Wordpress
Slider plugins for Wordpress
Reviews plugins for Wordpress
Portfolio plugins for Wordpress
Membership plugins for Wordpress
Forms plugins for Wordpress
Events Calendar plugins for Wordpress
Contact plugins for Wordpress
Comments plugins for Wordpress
Analytics plugins for Wordpress
Common Ninja Apps
Browse our extensive collection of compatible plugins, and easily embed them on any website, blog, online store, e-commerce platform, or site builder.
Create job listings with a jobs board widget that lets you post openings, manage roles easily, and help candidates find the right positions quickly.
Create a mega footer that organizes navigation links, contact info, logos, social icons and improves usability and site structure.
Add an interactive spinning wheel to offer prizes, capture leads, and drive user engagement through gamified rewards.
A scroll to top button that helps visitors move back to the top of long pages quickly, improving navigation and overall browsing flow.
Use a support form that lets customers submit tickets, saves each request, sends notifications, and helps you manage support more efficiently.
Use social media links with sticky buttons that keep your profiles visible, boost engagement, and help promote your content more effectively across your site.
Display multiple time zones with a world clock widget that offers clear global times, customizable styles, and a responsive design for better user experience.
Showcase content with a card carousel that combines images and text, improves visual design, and helps visitors explore key information.
Use the QR Code Generator to create and display QR codes for URLs, contact info, downloads, locations, and more.
Collect user insights with a feedback form that gathers valuable input, improves user experience, and helps you understand visitor needs more clearly.
Add Messenger Chat to your site to communicate with visitors, offer fast support, and create a smoother user experience across all pages.
Use a Lottie player to embed lightweight JSON animations that improve visual design, keep pages fast, and create a smoother user experience.
More plugins
The Common Ninja Search Engine platform helps website builders find the best site widgets, apps, plugins, tools, add-ons, and extensions! Compatible with all major website building platforms - big or small - and updated regularly, our Search Engine tool provides you with the business tools your site needs!
