freshflesh / acf-sync
在不同环境之间保持ACF字段组的同步
Requires
- php: >=5.3.0
- wordpress/wordpress: >=3.5
This package is not auto-updated.
Last update: 2024-09-24 02:29:02 UTC
README
作者提示:从5.1.5版本开始,ACF已包含其自己的手动同步功能!我建议使用此功能而不是ACF Sync插件进行手动同步。如果需要在不同的环境之间进行自动同步,尤其是ACF UI不应对用户可访问的生产实例,ACF Sync仍然适用。我很快将发布2.0版本,该版本将利用5.1.5功能,并取消手动同步功能。
ACF Sync是一个小巧的WordPress插件,让您在不同的环境之间保持ACF字段组的同步。
它确保您在不同的开发和生产环境中始终拥有最新的字段,无需手动导出/导入您的ACF字段。
这灵感来源于Sean Butze关于部署ACF字段组的这篇文章,除了它已被修改以适应ACF 5及其新的本地JSON功能。
安装
安装此插件以及ACF > 5.0.0。
- 使用git clone:
git clone https://github.com/FreshFlesh/ACF-Sync.git
- 使用composer:
composer require freshflesh/acf-sync
它是如何工作的?
要同步您的字段组到您的开发团队,您需要使用GIT或其他任何SCM工具对ACF生成的JSON文件进行版本控制。
有关本地JSON功能和如何在您的网站上激活它的更多信息,请参阅此处。
自动同步
您可以通过在代码中的某个位置定义一个ACF_FIELDS_VERSION
常量来自动同步您的字段组。
它应包含您的字段组版本,按照version_compare php函数的格式。
示例:define('ACF_FIELDS_VERSION', '1.0.0');
您可能希望将此常量与自定义帖子类型定义一起放置,例如
- 在项目核心插件中
- 在项目配置文件中
- 在主题functions.php中
每次您在WordPress管理后台更新字段时,请将ACF_FIELDS_VERSION
常量更新为新版本;例如从1.0.0
到1.1.0
。
当您的团队中的其他开发人员获取您的更改和新JSON文件时,ACF Sync将知道它们比数据库中的更新,并且当访问WordPress管理后台时,将自动将它们导入数据库。
当然,ACF Sync也可以用于在开发和生产环境之间同步字段组。
手动同步
除了自动同步功能外,ACF Sync还允许您手动同步字段组,如果您更愿意对如何以及何时导入字段组有更多控制。
激活后,它只是在ACF的导入/导出设置页面上添加一个新选项。
基于环境的配置
ACF 同步 还可以选择性地允许您使用 WP_ENV
常量来禁用保存到 JSON 并隐藏 ACF UI,以避免在非开发环境中出错,在预发布和生产环境中使用。
如果您使用 Bedrock WordPress 堆栈,则 WP_ENV
已在配置中定义,否则您可以在 wp-config.php 中自行定义它。
许可
MIT