Last active
June 6, 2021 12:59
-
-
Save Auke1810/0a31e29165a06d9e2094a1883c03c59a to your computer and use it in GitHub Desktop.
Wordpress performance snippets for functions.php
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
################# 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"; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
clean_url filter geplaatst voor het defer parser solution die GT matrix geeft.