boxuk / dictator
Dictator 控制WordPress的状态
v1.0
2022-12-01 09:21 UTC
Requires
- php: ^8.0 || ^8.1
- symfony/polyfill-php81: ^1.25
- wp-cli/mustangostang-spyc: ^0.6.3
Requires (Dev)
- phpunit/phpunit: ^9.5
- wp-cli/wp-cli-bundle: ^2.4
- wp-cli/wp-cli-tests: ^3.0
README
归属
- 此软件包是从 Dictator 分支的,由于它似乎已被遗弃,因此已获得许可。
概述
Dictator 控制WordPress的状态。强烈受到 Salt 的影响,Dictator 允许将存储在YAML状态文件中的配置属性强加给WordPress。
Dictator的主要关注点是允许以YAML状态文件的形式表达WordPress的配置方式。它以 状态 的形式理解WordPress。状态是 区域 的集合。每个状态文件都有状态声明和每个区域的任何跟踪配置详细信息。
例如,site
状态包括 settings
、users
和 terms
区域。针对生产数据运行 wp dictator export site site-state.yml
将会将生产状态导出到一个可读的状态文件。
state: site
settings:
title: Dictator
description: Just another WordPress site controlled by Dictator
date_format: F j, Y
time_format: g:i a
active_theme: twentyfourteen
使用 wp dictator impose site-state.yml
在本地应用状态文件,您就可以在不下载数据库的情况下复制生产环境。
安装
WP-CLI软件包
wp package install boxuk/dictator
Composer软件包
composer req boxuk/dictator
用法
Dictator 包含以下 WP-CLI 命令
wp dictator compare <file>
- 将给定的状态文件与WordPress状态进行比较。如果存在差异,则生成彩色diff,否则输出为空。wp dictator export <state> <file> [--regions=<regions>] [--force]
- 将WordPress状态导出到状态文件。wp dictator impose <file> [--regions=<regions>]
- 将给定的状态文件强加到WordPress。wp dictator validate <file>
- 验证提供的状态文件是否与每个区域的模式相符。
首次使用?通过调用 wp dictator export site site-state.yml
尝试Dictator,然后修改状态文件,并通过 wp dictator compare site-state.yml
查看与状态文件的彩色diff。
扩展
尽管Dictator仍处于起步阶段,但它编写时考虑了可扩展性。可以使用 Dictator::addState();
注册新状态,并且可以包含一组现有或自定义区域。为您的插件/主题编写状态/区域,以便用户可以轻松导出/强加设置。