如何禁用WordPress上的主题更新,以避免丢失我的更改?

qojgxg4l  于 2023-02-18  发布在  WordPress
关注(0)|答案(9)|浏览(164)

我试图修改一个模板,应该使用一个子主题(使用WordPress),所以,当父模板更新我不会失去我的变化。嗯,问题是,我创建了一个模板使用其他模板的一部分。我想设置我的风格和所有类似的,但也许我错过了一些更新命令,如果任何父模板将得到更新,我可能会失去我所有的工作。
我怎样才能完全确定不会在我的自定义模板上添加任何有关更新的信息?
谢谢

toe95027

toe950271#

将style.css中的版本号增加到某个非常高的值,您应该不会再收到更新通知。

9avjhtql

9avjhtql2#

打开style.css文件,更改主题名称和顶部注解中的信息,这将使您的主题变成子主题,任何更新都不会影响它。

/*
Theme Name: Your Theme Name
Author: Name
Author URI: Your URL
Description: This theme is...
Version: 1.0
*/
xmq68pz9

xmq68pz93#

如果要执行某些清理操作,请执行以下步骤:
1.搜索并替换所有“originalThemeName”在您的wordpress项目与个性化的东西,如“newThemeName”;
1.编辑主题的style.css并设置一个合适的版本号(如果您刚刚在生产环境中部署,则设置为1.0)
1.用你的“newThemeName”重命名主题的文件夹,然后从管理面板重新激活它。
完成后,它将不再比较原来的主题与wordpress主题目录,所以它不会发现任何更新。

xe55xuns

xe55xuns4#

在顶部的style.css中,只需将版本更改为版本:9.9.9而且它会马上完成这项工作。

3vpjnl9f

3vpjnl9f5#

wp-config.php中删除此行:

add_filter( 'auto_update_theme', '__return_true' );

请查看article以了解更多详细信息。

mrphzbgm

mrphzbgm6#

与其像其他人回答的那样简单地修改主题的style.css文件,我建议充分利用child themes,这样就有可能更新主主题(例如,如果发现安全漏洞或您只是希望使用最新版本),保留您所有的修改。
例如,如果要修改Twenty Fifteen主题,请创建一个新目录/wp-content/themes/twentyfifteen-child/ *,在此目录中需要包含以下内容的style.css文件:

/*
 Theme Name:   Twenty Fifteen Child
 Theme URI:    http://example.com/twenty-fifteen-child/
 Description:  Twenty Fifteen Child Theme
 Author:       John Doe
 Author URI:   http://example.com
 Template:     twentyfifteen
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  twenty-fifteen-child
*/

相应地进行修改。您可以为任何内容添加任何内容,但Template行除外,该行必须与父主题的目录名相同。当使用子主题时,它将加载新主题目录中的任何文件以及父主题中的文件。具体而言,子主题中的styles.css在父主题中的styles.css之后加载,子主题中的functions.php在父主题中的functions.php之前加载。对主题的任何修改都将在新创建的twentyfifteen-child目录中的文件中完成。

  • 这个目录可以随意命名,但是推荐使用这种命名风格,因为这样可以清楚地显示哪个主题是父主题。
lnxxn5zx

lnxxn5zx7#

此代码在wp加载后执行

add_action( 'wp_loaded', 'disable_wp_theme_update_loaded' );
function disable_wp_theme_update_loaded() {
    remove_action( 'load-update-core.php', 'wp_update_themes' );
    add_filter( 'pre_site_transient_update_themes', '__return_null' );
}
3bygqnnd

3bygqnnd8#

使用子主题是 * 第一步 * -更新主主题不会影响您的更改。
然而,使用子主题来防止(意外)更新是 * 不够的 *,因为wordpress update-routine中有一个严重的bug:Wordpress首先会检查Wordpress存储库中是否存在同名且版本号更高的主题。如果存在,则会作为更新提供并导入。有问题的主题是否为子主题并不重要!
有两种方法可以解决此问题:
1.将版本号增加到非常高的值,就像Alex指出的那样。但是这仅仅是一个变通方法,并不符合编码标准。
1.为您的子主题选择一个真正唯一的名称,例如总是在主题名称前面加上一些缩写来表示您的(公司)名称。通过搜索wordpress.org/themes来检查您的子主题名称是否真正唯一

niwlg2el

niwlg2el9#

在wp-config.php文件中添加以下行

define( 'AUTOMATIC_THEME_UPDATES', false );

相关问题