seothemes/子主题更新器

dev-master 2019-08-16 09:20 UTC

This package is auto-updated.

Last update: 2024-09-16 20:34:32 UTC


README

允许修改后的子主题在更新时接收自动更新而不会丢失更改。它通过在运行更新之前复制子主题,排除供应商目录来实现。更新完成后,复制后的style.css版本号将更新,然后所有复制的文件都复制回新的主题版本,除了供应商目录。基本上,唯一更新的文件都在供应商目录中,其他所有内容都保持不变。

安装

Composer(推荐)

从子主题根目录运行以下命令

composer require seothemes/child-theme-updater

手动

您可能手动复制并粘贴child-theme-updater.php文件到项目的某个地方,但不太推荐。花点时间学习Composer的基础知识,并使用这种方法。

用法

当使用Composer安装时,子主题更新器会自动加载。

在您的项目中引入child-theme-updater.php文件,或者使用以下代码实例化ChildThemeUpdater类(该类由Composer自动加载)

$child_theme_updater = new \SeoThemes\ChildThemeUpdater\Updater();
$child_theme_updater->run();

它不包括实际的更新检查器,对于公开托管仓库,我们推荐插件更新检查器,对于私人、授权主题,我们推荐Easy Digital Downloads 软件许可

它的目的是防止在更新过程中丢失对子主题所做的用户自定义更改。

默认情况下,它将只允许更新子主题的vendor目录。可以使用child_theme_updater_skip过滤器更改或添加额外的目录,例如

add_filter( 'child_theme_updater_skip', 'my_custom_directory' );
/**
 * Add `core` to the list of updatable directories.
 *
 * @since 1.0.0
 *
 * @param array $defaults List of directories that are changed during an update.
 *
 * @return array
 */
function my_custom_directory( $defaults ) {
	return array_merge( [ 'core' ], $defaults );
}