- load using official WordPress mechanism (
wp_enqueue_script
,$in_footer
) - use Autoptimize plugin to move any header scripts into the footer, and to concatenate all footer scripts into a single minified file. Don't exclude
js/jquery/jquery.js
. Note that files that are named*.min.js
aren't (re)minified by Autoptimize. - use vanilla JavaScript for essential page transformations, to bypass wait time for jQuery load and setup
- load using official WordPress mechanism (
wp_enqueue_style
) - use Autoptimize plugin to concatenate all stylesheets into a single minified file. Note that files that are named
*.min.css
aren't (re)minified by Autoptimize.
- Use modpagespeed's Inline Google Fonts API CSS, if possible. This determines which font format is required by the browser.
Otherwise:
- use the Web Font Loader, with the asynchronous syntax
- use
html
hook to hide fonts during replacement, to prevent FOUC - use
html
hook to controlline-height
during replacement, to prevent reflow
- Run images through ImageOptim (free, MacOS), compress large JPEGs to 90%
- Use dedicated rather than shared hosting, if possible
- Enable mod_pagespeed, if possible (Apache)
- Use a CDN if possible