WordPress 博客和大型网站的 CMS 内容管理系统

WordPress是一款能让您建立出色网站、博客或应用程序的开源软件。美观的设计,强大的功能,助您自由发挥心中所想。WordPress既是免费的,也是无价的。43% 的网站都在使用 WordPress,小到兴趣博客,大到新闻网站。WordPress 软件为每个人而设计,强调无障碍、性能、安全和易用。我们相信,伟大的软件应在较少的设置下就能运行,这样您就可以专注于自由地分享您的故事、产品或服务。基本的WordPress软件简单易懂,所以您可以轻松上手。其还为发展和成功提供了强大的功能。

图片[1]-WordPress 博客和大型网站的 CMS 内容管理系统-胡萝卜周

WordPress 贡献者分布于全球各地,他们奉献了无数的时间构建了推进发布内容大众化的工具。WordPress 是一款既免费又无价的开源软件。

图片[2]-WordPress 博客和大型网站的 CMS 内容管理系统-胡萝卜周

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' );
// 禁用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+版本之后的响应式图片功能及缩略图裁剪功能
// disable generated image sizes 禁止生成图像尺寸
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' );

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

// disable other image sizes 禁止生成其它图像尺寸
function shapeSpace_disable_other_image_sizes() { 
// disable images added via set_post_thumbnail_size() 禁止通过set_post_thumbnail_size()函数生成的图片尺寸
remove_image_size('post-thumbnail'); 
// disable any other added image sizes 禁止添加其它图像尺寸
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/'
], 'gravatar.wp-china-yes.net/', $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');
//禁用登陆界面语言切换器
add_filter( 'login_display_language_dropdown', '__return_false' );

下载地址

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享