WordPress中文版(网站博客程序) v6.6.2 正式版-优化教程[第001810期]

38次阅读
没有评论

共计 8039 个字符,预计需要花费 21 分钟才能阅读完成。

WordPress 中文版是全球广泛使用的免费开源网站博客程序.WordPress 最新版是一种采用 PHP 语言开发的博客平台, 用户可以在支持 PHP 和 MySQL 数据库的服务器上架设自己的网站, 也可以把 WordPress 当作博客到大型网站的内容管理系统 (CMS).WordPress 程序是免费的开源项目, 在 GNU 通用公共许可证下授权发布.

WordPress 中文版 (网站博客程序) v6.6.2 正式版 - 优化教程 [第 001810 期]

WordPress 新版必备优化代码:

<!-- 添加优化代码到主题目录 functions.php 文件 -->
/* 彻底关闭自动更新(核心程序 / 主题 / 插件 / 翻译自动更新 */
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');
remove_action('load-update.php', 'wp_update_plugins');
remove_action('load-update-core.php', 'wp_update_plugins');
remove_action('admin_init', '_maybe_update_plugins');
/* 移除后台主题更新检查 */
remove_action('load-themes.php', 'wp_update_themes');
remove_action('load-update.php', 'wp_update_themes');
remove_action('load-update-core.php', 'wp_update_themes');
remove_action('admin_init', '_maybe_update_themes');
/* 关闭程序更新提示 */
add_filter('pre_site_transient_update_core', function($a){return null;});
/* 关闭插件更新提示 */
add_filter('pre_site_transient_update_plugins', function($a){return null;});
/* 关闭主题更新提示 */
add_filter('pre_site_transient_update_themes', function($a){return null;});
// 关闭 WordPress 的 XML-RPC 功能
add_filter('xmlrpc_enabled', '__return_false');
/* 关闭 XML-RPC 的 pingback 端口 */
add_filter('xmlrpc_methods', 'remove_xmlrpc_pingback_ping');
function remove_xmlrpc_pingback_ping($methods) {unset( $methods['pingback.ping'] );
return $methods;
}
// 禁用 pingbacks, enclosures, trackbacks
remove_action('do_pings', 'do_all_pings', 10);
// 去掉 _encloseme 和 do_ping 操作
remove_action('publish_post','_publish_post_hook',5);
/* 禁止加载 s.w.org 获取表情和头像 */
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');
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);
/* 完全禁止 REST API、移除 wp-json 链接 */
function lerm_disable_rest_api($access) {
	return new WP_Error(
		'Stop!',
		'Soooooryyyy',
		array('status' => 403,)
	);
}
add_filter('rest_authentication_errors', 'lerm_disable_rest_api');
remove_action('wp_head', 'rest_output_link_wp_head', 10);
/* 禁止查询网站静态资源连接版本字符 */
function _remove_script_version ($src){$parts = explode( '?', $src);
  return $parts[0];
}
add_filter('script_loader_src', '_remove_script_version', 15, 1);
add_filter('style_loader_src', '_remove_script_version', 15, 1);
/* 移除前端网页源代码内的头部冗余代码 */
remove_action('wp_head', 'feed_links_extra', 3); 
remove_action('wp_head', 'rsd_link'); 
remove_action('wp_head', 'wlwmanifest_link'); 
remove_action('wp_head', 'index_rel_link'); 
remove_action('wp_head', 'start_post_rel_link', 10, 0); 
remove_action('wp_head', 'wp_generator'); 
/* 禁止新版文章编辑器加载前端样式 */
function wpassist_remove_block_library_css(){wp_dequeue_style( 'wp-block-library');
} 
remove_action('wp_enqueue_scripts', 'wp_common_block_scripts_and_styles');
add_action('wp_enqueue_scripts', 'wpassist_remove_block_library_css');
/* 移除新版本站点健康状态面板和菜单项 */
add_action('admin_menu', 'remove_site_health_menu'); 
function remove_site_health_menu(){remove_submenu_page( 'tools.php','site-health.php'); 
}
/* 禁用 5.5 版后自带的 XML 站点地图 */
add_filter('wp_sitemaps_enabled', '__return_false');
/* 移除前后台顶部工具栏指定菜单 */
function admin_bar_item (WP_Admin_Bar $admin_bar) {$admin_bar->remove_menu('wp-logo'); // 移动 wp 的 logo
	$admin_bar->remove_menu('site-name'); // 移动站点名称
	$admin_bar->remove_menu('updates'); // 移动更新提示
	$admin_bar->remove_menu('comments'); // 移动评论提示
	/*$admin_bar->remove_menu('new-content');	// 移除新建按钮  */ 
}
add_action('admin_bar_menu', 'admin_bar_item', 500);
// 移除后台仪表盘站点健康状态面板
add_action('wp_dashboard_setup', 'remove_site_health_dashboard_widget');
function remove_site_health_dashboard_widget()
{remove_meta_box('dashboard_site_health', 'dashboard', 'normal');
}
// 移除后台仪表盘菜单:站点健康状态
add_action('admin_menu', 'remove_site_health_menu');	
function remove_site_health_menu(){remove_submenu_page( 'tools.php','site-health.php'); 
}
// 移除后台仪表盘菜单:活动、新闻
function bzg_remove_dashboard_widgets() {
	global $wp_meta_boxes;
	#移除 "活动" 
	unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_activity']);
	#移除 "WordPress 新闻" 
	unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
}
add_action('wp_dashboard_setup', 'bzg_remove_dashboard_widgets');
// 移除后台仪表盘菜单:帮助
function bzg_remove_help() {get_current_screen()->remove_help_tabs();}
add_action('admin_head', 'bzg_remove_help');

// 移除后台页面 title 标题的 wordpress 后缀
add_filter('admin_title', 'delAdminTitle', 10, 2);
function delAdminTitle($admin_title, $title){return $title.'‹'.get_bloginfo('name');
}
// 移除登陆页面 title 标题的 wordpress 后缀
add_filter('login_title', 'remove_login_title', 10, 2);
function remove_login_title($login_title, $title){return $title.'‹'.get_bloginfo('name');
}
/* 彻底禁止 4.4+ 版之后响应式图片功能及缩略图裁剪功能 */
// 禁止生成图像尺寸
function zm_customize_image_sizes($sizes){unset( $sizes[ 'thumbnail']);
	unset($sizes[ 'medium']);
	unset($sizes[ 'medium_large'] );
	unset($sizes[ 'large']);
	unset($sizes[ 'full'] );
	unset($sizes['1536x1536'] );
	unset($sizes['2048x2048'] );
	return $sizes;
}

add_filter('intermediate_image_sizes_advanced', 'zm_customize_image_sizes');

// 禁止缩放图片尺寸
add_filter('big_image_size_threshold', '__return_false');

// 禁止生成其它图像尺寸
function shapeSpace_disable_other_image_sizes() {// 禁止通过 set_post_thumbnail_size() 函数生成的图片尺寸
	remove_image_size('post-thumbnail'); 
	// 禁止添加其它图像尺寸
	remove_image_size('another-size');
}
add_action('init', 'shapeSpace_disable_other_image_sizes');
// 切换经典文章编辑器(v5.x 开始默认古腾堡编辑器)add_filter('use_block_editor_for_post', '__return_false');
// 替换评论用户头像链接为国内镜像加速访问
add_filter('get_avatar', function ($avatar) {
return str_replace([
'www.gravatar.com/avatar/',
'0.gravatar.com/avatar/',
'1.gravatar.com/avatar/',
'2.gravatar.com/avatar/',
'secure.gravatar.com/avatar/',
'cn.gravatar.com/avatar/'
], 'cravatar.cn/', $avatar);
});

// 取消内容转义
remove_filter('the_content', 'wptexturize');
// 取消摘要转义
remove_filter('the_excerpt', 'wptexturize');
// 取消评论转义
remove_filter('comment_text', 'wptexturize');
// 禁止转义引号字符
remove_filter('the_content', 'wptexturize');    // 禁止英文引号转义为中文引号

// 文章插入图片自动移除 img 的 width、height、class 属性;add_filter('post_thumbnail_html', 'fanly_remove_images_attribute', 10);
add_filter('image_send_to_editor', 'fanly_remove_images_attribute', 10);
function fanly_remove_images_attribute($html) {//$html = preg_replace( '/(width|height)="d*"s/', "", $html );
 $html = preg_replace('/width="(d*)"s+height="(d*)"s+class="[^"]*"/',"", $html );
 $html = preg_replace('/  /', "", $html);
 return $html;
}

// 自适应图片删除 width 和 height
function ludou_remove_width_height_attribute($content){preg_match_all('/<[img|IMG].*?src=['|"](.*?(?:[.gif|.jpg|.png.webp]))['|"].*?[/]?>/', $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);
}

/* 删除文章时删除图片附件 */
function delete_post_and_attachments($post_ID) {
global $wpdb;
#删除特色图片
$thumbnails = $wpdb->get_results("SELECT * FROM $wpdb->postmeta WHERE meta_key ='_thumbnail_id'AND post_id = $post_ID");
foreach ($thumbnails as $thumbnail) {wp_delete_attachment( $thumbnail->meta_value, true);
}
#删除图片附件
$attachments = $wpdb->get_results("SELECT * FROM $wpdb->posts WHERE post_parent = $post_ID AND post_type ='attachment'");
foreach ($attachments as $attachment) {wp_delete_attachment( $attachment->ID, true);
}
$wpdb->query("DELETE FROM $wpdb->postmeta WHERE meta_key ='_thumbnail_id'AND post_id = $post_ID");
}
add_action('before_delete_post', 'delete_post_and_attachments');
新版变化

News & Announcements – WordPress.org
https://cn.wordpress.org/download/releases/

系统要求

WordPress 5.x 以上版本最低运行需求:
PHP5.6 或更高版,建议 PHP7.2 稳定版
MySQL5.6 或更高版,建议用 5.6 稳定版

下载地址

WordPress 中文版 (网站博客程序) v6.6.2 正式版
https://cn.wordpress.org/download/releases/
https://cn.wordpress.org/wordpress-6.6.2-zh_CN.zip
https://cn.wordpress.org/wordpress-6.6.2-zh_CN.tar.gz

正文完
 0
admin
版权声明:本站原创文章,由 admin 于2024-10-04发表,共计8039字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)