高级自定义字段 (ACF) Pro acf-json 工作流程
Posted
技术标签:
【中文标题】高级自定义字段 (ACF) Pro acf-json 工作流程【英文标题】:Advanced Custom Fields (ACF) Pro acf-json workflow 【发布时间】:2015-11-04 02:55:21 【问题描述】:我的团队刚刚切换到使用 acf-json,我们对如何按照使用 git 的团队来处理文件有一些疑问。
问题基本上是,我们是否应该始终在 .json 文件显示为已修改时提交它们,并且每个团队成员是否应该遵守在拉取后立即同步的习惯?
最近(在我理解同步不是自动的之前)我在同步之前更改了管理员中的一些内容。当然,这使我的“修改”日期更新,同步不再是一种选择。我们通过从生产服务器生成新的 .json 文件并将我们的本地机器同步到它们来修复它。问题解决了。
但是……在我同步之后,创建了更新的 .json,它实际上与我刚刚导入的相同,但修改日期更新。 现在,如果我提交了这些并且另一个用户同步了那些不会永远发生同样的事情吗?
现在我只会删除而不是提交它们,但我希望有人可以解释一个更自动化的,而不是在编辑字段组时手动操作的工作流程。
谢谢。
【问题讨论】:
乔尔,这不是编程问题。很多人都在这里体验过。您需要说明您遇到的问题以及您采取了哪些解决方法。 这不准确,但我还是更改了帖子以包含整个问题。 【参考方案1】:是的,JSON 文件绝对应该提交到 git 并在每次拉取后同步(如有必要)。这可能会变得乏味,团队成员有时会不时忘记这样做。
查看 ACF 插件目录中的includes/admin/admin-field-groups.php
,我们看到手动同步请求正在处理大约第 295 行,这意味着应该可以在挂钩内自动执行同步过程。
这样做需要非常小心,以防止干扰 ACF 的字段加载...我在尝试此操作时遇到重复字段的问题并恢复为手动同步字段(我主要是单独开发)
【讨论】:
感谢您的意见。我的问题实际上导致 ACF 核心中的代码更改阻止它在同步后生成新的 json。我忘记了包含更新的版本。【参考方案2】:但是……在我同步之后,创建了更新的 .json,它是有效的 与我刚刚导入的相同,但修改日期更新。 现在,如果我提交这些并且另一个用户同步这些将不一样 事情一直在发生吗?
您需要执行以下操作才能将一切恢复正常:
1- 在本地,将所有 ACF 发送到垃圾箱,然后转到垃圾箱并永久删除它们。 (数据不会被删除,它存储在帖子元数据的其他地方)
2- 在生产站点或最新功能副本所在的位置,转到 ACF 工具并以 JSON 格式导出所有字段。
3- 在本地,导入所有字段。将生成与在线配置匹配的新本地 Json。
--
如果生产站点也存在与 Json 的同步问题,您需要阻止对生产中配置页面的访问,以便只能通过 JSON 更新字段。 (提交)
配置同步后,您需要遵循此指南。
https://www.awesomeacf.com/how-to-avoid-conflicts-when-using-the-acf-local-json-feature/
【讨论】:
以上是关于高级自定义字段 (ACF) Pro acf-json 工作流程的主要内容,如果未能解决你的问题,请参考以下文章
php 使用ACF Pro将输出自定义字段截断为指定的单词数
php 使用ACF Pro将输出自定义字段截断为指定的单词数
在 WooCommerce 挂钩中显示高级自定义字段 (ACF) 值