一、禁止头部加载s.w.org

将下面的代码添加到主题functions.php模板中:

方法一

remove_action( 'wp_head', 'wp_resource_hints', 2 );

方法二

function remove_dns_prefetch( $hints, $relation_type ) {
if ( 'dns-prefetch' === $relation_type ) {
return array_diff( wp_dependencies_unique_hosts(), $hints );
}
return $hints;
}
add_filter( 'wp_resource_hints', 'remove_dns_prefetch', 10, 2 );

方法二兼容性更好些。


二、禁止加载表情代码

这个看你个人,同样添加到主题functions.php模板中:

remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
add_filter( 'emoji_svg_url', '__return_false' );

三、优化后台面板

当你登陆wordpress后台的时候,它会连接wordpress官方接口,获取程序更新,主题更新,插件更新,语言包更新等,由于wordpress官方在国外,所以说国内用户访问加载极其缓慢,有时候直接假死。

我们需要做的就是屏蔽掉无用的后台查询功能,把以下代码添加到你当前主题目录下的函数文件functions.php中:

//去除后台没必要的功能
function disable_dashboard_widgets() { 
remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');//近期评论 
remove_meta_box('dashboard_recent_drafts', 'dashboard', 'normal');//近期草稿
remove_meta_box('dashboard_primary', 'dashboard', 'core');//wordpress博客 
remove_meta_box('dashboard_secondary', 'dashboard', 'core');//wordpress其它新闻 
remove_meta_box('dashboard_right_now', 'dashboard', 'core');//wordpress概况 
remove_meta_box('dashboard_incoming_links', 'dashboard', 'core');//wordresss链入链接 
remove_meta_box('dashboard_plugins', 'dashboard', 'core');//wordpress链入插件 
remove_meta_box('dashboard_quick_press', 'dashboard', 'core');//wordpress快速发布 
} 
add_action('admin_menu', 'disable_dashboard_widgets');
//移除 WordPress 加载的JS和CSS链接中的版本号
function wpdaxue_remove_cssjs_ver( $src ) {
if( strpos( $src, 'ver=' ) )
$src = remove_query_arg( 'ver', $src );
return $src;
}
add_filter( 'style_loader_src', 'wpdaxue_remove_cssjs_ver', 999 );
add_filter( 'script_loader_src', 'wpdaxue_remove_cssjs_ver', 999 );
//移除自动保存
wp_deregister_script('autosave');
//移除修订版本
remove_action('post_updated','wp_save_post_revision' );
//后台禁用Google Open Sans字体,加速网站
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;
}

四、移除小部件“Meta”中的内容

打开网站的根目录,找到wp-includes文件夹,在此目录下找到widgets文件夹,这个目录下有个class-wp-widget-meta.php文件,就是我们要修改的文件。

打开文件后,查找 "wp_register" 关键字(注意不包括引号) ,大概在57行左右,代码如下:

<?php wp_register(); ?>
<li><?php wp_loginout(); ?></li>
<li><a href="<?php echo esc_url( get_bloginfo( 'rss2_url' ) ); ?>"><?php _e('Entries <abbr title="Really Simple Syndication">RSS</abbr>'); ?></a></li>
<li><a href="<?php echo esc_url( get_bloginfo( 'comments_rss2_url' ) ); ?>"><?php _e('Comments <abbr title="Really Simple Syndication">RSS</abbr>'); ?></a></li>
<?php
/**
\* Filter the "Powered by WordPress" text in the Meta widget.
*
\* @since 3.6.0
*
\* @param string $title_text Default title text for the WordPress.org link.
*/
echo apply_filters( 'widget_meta_poweredby', sprintf( '<li><a href="%s" title="%s">%s</a></li>',
esc_url( __( 'https://wordpress.org/' ) ),
esc_attr__( 'Powered by WordPress, state-of-the-art semantic personal publishing platform.' ),
_x( 'WordPress.org', 'meta widget link text' )
) );
wp_meta();
?>
</ul>

有人可能会疑惑,这么一大坨是什么玩意,尤其对于没有HTML经验的同学看着可能有点吃力,不着急,我们只是按照自己需要的做替换就好。

1.不需要显示"登录" ,OK 删掉下面这行代码:

<li><?php wp_loginout(); ?></li>

2.不需要显示"文章RSS" , OK 删掉下面这行代码:

 <li><a href="<?php echo esc_url( get_bloginfo( 'rss2_url' ) ); ?>"><?php _e('Entries <abbr title="Really Simple Syndication">RSS</abbr>'); ?></a></li>

3.不需要显示"评论RSS" , OK 删掉下面这行代码:

<li><a href="<?php echo esc_url( get_bloginfo( 'comments_rss2_url' ) ); ?>"><?php _e('Comments <abbr title="Really Simple Syndication">RSS</abbr>'); ?></a></li>

4.不需要显示"WordPress.org" , OK 删掉下面这些代码:

<?php
/**
\* Filter the "Powered by WordPress" text in the Meta widget.
*
\* @since 3.6.0
*
\* @param string $title_text Default title text for the WordPress.org link.
*/
echo apply_filters( 'widget_meta_poweredby', sprintf( '<li><a href="%s" title="%s">%s</a></li>',
esc_url( __( 'https://wordpress.org/' ) ),
esc_attr__( 'Powered by WordPress, state-of-the-art semantic personal publishing platform.' ),
_x( 'WordPress.org', 'meta widget link text' )
) );
wp_meta();
?>

同理,可以删除其他无用内容。

最后保存文件,替换掉服务器上的同名文件即可。


五、去掉顶部自带导航

为了方便管理员快速进入后台管理网站,在顶部强制加入了一个工具条(admin bar),而且默认是对所有用户都显示的,有时候看着挺烦心。那么怎么来去除这个烦人的工具条(admin bar)呢?

完全禁用工具条:

1、完全去除wordpress工具条(代码一)

show_admin_bar(false);

2、完全去除wordpress工具条(代码二)

add_filter('show_admin_bar', '__return_false');

3、只对特定用户显示工具条

  • 只对管理员显示
if (!current_user_can('manage_options')) {
add_filter('show_admin_bar', '__return_false');
}
  • 只对管理员和编辑显示
if(!current_user_can('edit_posts')) {
add_filter('show_admin_bar', '__return_false');
}

4、将工具条从顶部移至页脚

functionfb_move_admin_bar() {
echo'
';
}
// 如果你想让工具条显示在后台顶部,请删除这行代码
add_action( 'admin_head', 'fb_move_admin_bar');
//如果你想让工具条显示在前台顶部,请删除这行代码
add_action( 'wp_head', 'fb_move_admin_bar');

PS:以上代码都是加入到functions.php中即可。我个人推荐用第一种方法。


六、移动端图片自适应

没错,有些主题是没考虑移动端用户的,导致手机上访问时,图片超大。。

把以下代码添加到你当前主题目录下的函数文件functions.php中:

// 自适应图片大小
function ludou_remove_width_height_attribute($content){
preg_match_all("/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png\.bmp]))[\'|\"].*?[\/]?>/", $content, $images);
if(!empty($images)) {
foreach($images[0] as $index => $value){
$new_img = preg_replace('/(width|height)="\d*"\s/', "", $images[0][$index]);
$content = str_replace($images[0][$index], $new_img, $content);
}
}
return $content;
}
// 判断是否是移动设备浏览
if(wp_is_mobile()) {
// 删除文章内容中img的width和height属性
add_filter('the_content', 'ludou_remove_width_height_attribute', 99);
}

七、禁止切割图片为多种尺寸

在管理后台将此项所有设置均改为0,并将下面代码添加到当前主题 functions.php 模板中:

add_filter( 'max_srcset_image_width', create_function( '', 'return 1;' ) );

八、文章阅读体验优化

  1. 自定义滚动条样式

如果你的主题没有单独设置滚动条的话,可以尝试更改网页及代码块的滚动条。把下面的代码添加到额外的CSS样式里:

/*---滚动条默认显示样式--*/
::-webkit-scrollbar-thumb{
   height:50px;
   outline-offset:-2px;
   outline:2px solid #C2C6C6;
   -webkit-border-radius:4px;
   border: 2px solid #C2C6C6;
}
/*---鼠标点击滚动条显示样式--*/
::-webkit-scrollbar-thumb:hover{
   background-color:#424242;
   height:50px;
   -webkit-border-radius:4px;
}
/*---滚动条大小--*/
::-webkit-scrollbar{
   width:8px;
   height:8px;
}
/*---滚动框背景样式--*/
::-webkit-scrollbar-track-piece{
   background-color:#424242;
   -webkit-border-radius:0;
}
  1. 代码宽度自适应(解决代码不换行的问题)
pre{
  overflow-y: auto;
  max-height: 300px;
  white-space: pre-wrap;
  white-space: -moz-pre-wrap;
  white-space: -pre-wrap;
  white-space: -o-pre-wrap;
  word-wrap: break-word;
}

小壮壮/Write
说点什么
支持Markdown语法
好耶,沙发还空着ヾ(≧▽≦*)o
Loading...