200,000+
February 12, 2026
February 27, 2020
This plugin supports a few features that may improve the performance of page loading and rendering in the browser:
To test features without enabling them for the entire site, you may append query params to a WordPress post or page URL. For example, to test enabling JavaScript concatenation for https://example.com/blog/, you can use the URL https://example.com/blog/?concat-js=1.
Supported query params:
concat-css controls CSS concatenation. Values: 1 for ON and 0 for OFF.concat-js controls JavaScript concatenation. Values: 1 for ON and 0 for OFF.load-mode-js controls how non-critical JavaScript are loaded. Values: ‘defer’ for deferred, ‘async’ for async loading, any other value indicates the feature should be disabled.You can run the PHPUnit tests locally using Docker (no local MySQL required).
First time (or after changing DB credentials):
docker compose down -v
Run tests:
docker compose up --build --abort-on-container-exit --exit-code-from tests
Optional overrides (examples):
WP_VERSION=6.5 docker compose up --build --abort-on-container-exit --exit-code-from testsPHP_VERSION=7.4 docker compose up --build --abort-on-container-exit --exit-code-from testsPHPUNIT_VERSION=9.6.20 docker compose up --build --abort-on-container-exit --exit-code-from testsThis plugin uses sensible defaults so it can operate without configuration, but there are a number of constants you may use for a custom configuration.
Page Optimize caches concatenated scripts and styles by default, and this constant controls where the cache files are stored. The default directory is cache/page_optimize under your site’s wp-content folder.
To change the cache location, set this constant to the absolute filesystem path of that location.
To disable caching, set this constant to false. Please note that disabling Page Optimize caching may negatively impact performance unless you are caching elsewhere.
Page Optimize has CSS Minification capabilities which are off by default.
If you’re using caching, and not minifying CSS elsewhere, it is recommended to enable it by setting it to true.
No FAQ provided.
@import hoisting to preserve long Google Fonts-style URLs with semicolons and avoid false positives from @import-like substrings in rule bodies/URL paths.async).script_loader_tag filter for scripts that are concatenate-able but have no neighbors to concatenate with. This fixes a case where the TwentyTwenty theme wanted to apply a defer attribute to its script but was never given the opportunity.| Version | Download | Type |
|---|---|---|
| 0.6.2 | Download | Stable |
| 0.6.1 | Download | Stable |
| 0.6.0 | Download | Stable |
| 0.5.8 | Download | Stable |
| 0.5.7 | Download | Stable |
| 0.5.6 | Download | Stable |
| 0.5.5 | Download | Stable |
| 0.5.4 | Download | Stable |
| 0.5.3 | Download | Stable |
| 0.5.2 | Download | Stable |
| 0.5.1 | Download | Stable |
| 0.5.0 | Download | Stable |
| 0.4.7 | Download | Stable |
| 0.4.6 | Download | Stable |
| 0.4.4 | Download | Stable |
| 0.4.3 | Download | Stable |
| 0.4.2 | Download | Stable |
| Development | Download | Trunk |