functions.php 有什么用
functions.php 是 WordPress 预留的功能函数文件,专门用于添加各种自定义函数代码。现在的WordPress主题的功能越来越强大了,一般都自带了 functions.php 这个文件(通常在主题根目录)。
php中的注释
注释,就是专门用来对代码进行补充说明的文本,一般分为单行注释和多行注释,单行注释使用两个斜杠 // ,多行注释使用 /* */
WordPress 加速的一个要点就是能不用插件就不要用插件,插件越多网站越慢
禁用谷歌字
add_filter( ‘gettext_with_context’, ‘wpdx_disable_open_sans’, 888, 4 );
function wpdx_disable_open_sans( $translations, $text,$context, $domain ) {if ( ‘Open Sans font: on or off’ == $context && ‘on’ == $text ) {
$translations = ‘off’; } return$translations;}
替换 Gravatar
使用 V2EX 的 Gravatar 镜像来代替原来的,支持 HTTPS。
function get_ssl_avatar($avatar) {
$avatar = preg_replace(‘/.*\/avatar\/(.*)\?s=([\d]+)&.*/’,‘<img src=”https://cdn.v2ex.co/gravatar/$1?s=$2″ class=”avatar avatar-$2″ height=”$2″ width=”$2″>’,$avatar);return $avatar;}
add_filter(‘get_avatar’, ‘get_ssl_avatar’);
强制jquery库文件底部载入
将 JS 放到最后加载,有利于提高网站加载效率
function ds_print_jquery_in_footer( &$scripts) { if ( ! is_admin() )
$scripts->add_data( ‘jquery’, ‘group’, 1 );}
add_action(‘wp_default_scripts’, ‘ds_print_jquery_in_footer’ );
删除 WP 头不需要的代码
remove_action(‘wp_head’, ‘rsd_link’);
remove_action(‘wp_head’, ‘wlwmanifest_link’);remove_action(‘wp_head’,‘wp_generator’);remove_action(‘wp_head’, ‘start_post_rel_link’);remove_action(‘wp_head’,‘index_rel_link’);
remove_action(‘wp_head’, ‘adjacent_posts_rel_link’);
禁用 Emoji 功能
remove_action(‘admin_print_scripts’, ‘print_emoji_detection_script’);
remove_action(‘admin_print_styles’,‘print_emoji_styles’);remove_action(‘wp_head’, ‘print_emoji_detection_script’, 7);remove_action(‘wp_print_styles’, ‘print_emoji_styles’);remove_action(’embed_head’, ‘print_emoji_detection_script’);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’);
屏蔽文章 Embed 功能
remove_action(‘rest_api_init’, ‘wp_oembed_register_route’);
remove_filter(‘rest_pre_serve_request’,‘_oembed_rest_pre_serve_request’, 10, 4);remove_filter(‘oembed_dataparse’, ‘wp_filter_oembed_result’, 10);remove_filter(‘oembed_response_data’, ‘get_oembed_response_data_rich’, 10, 4);remove_action(‘wp_head’,‘wp_oembed_add_discovery_links’);
remove_action(‘wp_head’, ‘wp_oembed_add_host_js’);
关闭 XML-RPC 功能
add_filter(‘xmlrpc_enabled’, ‘__return_false’);
屏蔽 REST API
add_filter(‘rest_enabled’, ‘__return_false’);
add_filter(‘rest_jsonp_enabled’, ‘__return_false’);
屏蔽其他无用功能
remove_filter( ‘the_content’, array( $GLOBALS[‘wp_embed’], ‘autoembed’ ), 8 );
add_filter(‘automatic_updater_disabled’, ‘__return_true’);// 彻底关闭自动更新remove_action(‘init’, ‘wp_schedule_update_checks’);// 关闭更新检查定时作业wp_clear_scheduled_hook(‘wp_version_check’);// 移除已有的版本检查定时作业wp_clear_scheduled_hook(‘wp_update_plugins’);// 移除已有的插件更新定时作业wp_clear_scheduled_hook(‘wp_update_themes’);// 移除已有的主题更新定时作业wp_clear_scheduled_hook(‘wp_maybe_auto_update’);// 移除已有的自动更新定时作业remove_action( ‘admin_init’, ‘_maybe_update_core’ );// 移除后台内核更新检查
remove_action( ‘load-plugins.php’, ‘wp_update_plugins’ );