如何修改WordPress主题名称,更新后仍保持白标修改效果?
修改WordPress主题名称并保留自动更新的可行方案
直接修改主题文件夹名和style.css里的信息会在主题更新时被官方包覆盖,导致设置重置,下面是几种靠谱的解决办法:
方法一:子主题方案(官方推荐)
子主题完全独立于父主题更新,既能继承原主题的所有功能,又能永久保留自定义的主题名称:
- 在
wp-content/themes/下新建一个文件夹,比如my-custom-theme。 - 在这个文件夹里创建
style.css,填入以下内容(替换括号里的自定义内容):/* Theme Name: 你的自定义主题名称 Theme URI: 你的网站链接(可选) Description: 基于原主题的自定义子主题 Author: 你的名称 Author URI: 你的个人链接(可选) Template: 原主题的文件夹名(比如原主题是twentytwentyfour就填这个) Version: 1.0.0 */ /* 这里可以加自定义样式,会覆盖父主题的样式 */ - 再创建
functions.php文件,添加代码引入父主题样式:<?php add_action( 'wp_enqueue_scripts', 'my_child_theme_enqueue_styles' ); function my_child_theme_enqueue_styles() { $parent_style = 'parent-style'; // 父主题样式句柄,一般是原主题文件夹名加-style wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' ); wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() . '/style.css', array( $parent_style ), wp_get_theme()->get('Version') ); } ?> - 登录WordPress后台激活这个子主题,之后后台显示的就是你自定义的名称,父主题更新完全不会影响它。
方法二:用代码修改后台显示名称
如果不想用子主题,可通过代码片段插件添加自定义函数,修改后台显示的主题名称(原主题文件不动,更新后也不会失效):
- 代码如下(替换括号里的内容):
add_filter('wp_get_themes', 'custom_theme_name_display'); function custom_theme_name_display($themes) { $original_theme_slug = '原主题的文件夹名'; $custom_name = '你的自定义主题名称'; if (isset($themes[$original_theme_slug])) { $themes[$original_theme_slug]->name = $custom_name; // 可选:顺便改主题描述 $themes[$original_theme_slug]->description = '自定义的主题描述'; } return $themes; } - 把这段代码通过Code Snippets这类插件添加,不要直接写在原主题的
functions.php里(否则更新会丢失),添加后后台显示的主题名称就会变成你设置的内容。
方法三:白标插件方案
有专门的插件可以实现主题白标,修改名称的同时保留自动更新:
- White Label CMS:可以自定义后台的各类标识,包括主题名称、登录界面等,设置不会随主题更新重置。
- WP Hide & Security Enhancer:不仅能改主题名称,还能隐藏主题、插件的原始信息,增强安全性,更新后设置依然有效。
- 安装插件后,在设置界面找到主题相关选项,输入自定义名称即可,不用碰主题文件。
重要提醒
- 绝对不要直接修改原主题的核心文件(
style.css、functions.php、文件夹名),主题更新时这些文件会被完全覆盖,所有修改都会丢失。 - 优先选子主题方案,这是WordPress官方认可的自定义方式,安全且易维护。
内容的提问来源于stack exchange,提问作者bazass66
相关产品推荐
相关产品推荐

