Skip to content

Instantly share code, notes, and snippets.

@Auke1810
Last active June 6, 2021 12:59
Show Gist options
  • Save Auke1810/0a31e29165a06d9e2094a1883c03c59a to your computer and use it in GitHub Desktop.
Save Auke1810/0a31e29165a06d9e2094a1883c03c59a to your computer and use it in GitHub Desktop.
Wordpress performance snippets for functions.php
################# performance snippets ###########################################
/**
* decrease jpeg quality to 80
*/
add_filter( 'jpeg_quality', create_function( '', 'return 80;' ) );
/**
* Disable the emoji's
*/
function disable_emojis() {
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
remove_action( 'admin_print_styles', 'print_emoji_styles' );
remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
remove_filter( 'comment_text_rss', 'wp_staticize_emoji' );
remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
add_filter( 'tiny_mce_plugins', 'disable_emojis_tinymce' );
}
add_action( 'init', 'disable_emojis' );
/**
* Filter function used to remove the tinymce emoji plugin.
*
* @param array $plugins
* @return array Difference betwen the two arrays
*/
function disable_emojis_tinymce( $plugins ) {
if ( is_array( $plugins ) ) {
return array_diff( $plugins, array( 'wpemoji' ) );
} else {
return array();
}
}
// Remove WP embed script
function speed_stop_loading_wp_embed() {
if (!is_admin()) {
wp_deregister_script('wp-embed');
}
}
add_action('init', 'speed_stop_loading_wp_embed');
// Remove Query Strings
function _remove_script_version( $src ){
$parts = explode( '?ver', $src );
return $parts[0];
}
add_filter( 'script_loader_src', '_remove_script_version', 15, 1 );
add_filter( 'style_loader_src', '_remove_script_version', 15, 1 );
// defer parsing solution.
// add at the bottom of your child theme functions.php
add_filter('clean_url','async_js',11);
function async_js($url) {
if ( false !== strpos( $url, 'jquery.js' ) || false === strpos( $url, '.js' )) {
return $url;
}
return "$url' defer='defer";
}
@Auke1810
Copy link
Author

clean_url filter geplaatst voor het defer parser solution die GT matrix geeft.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment