按此:与 Iain Poulson 一起深入了解 Advanced Custom Fields 6.0 中的新功能

已发表: 2022-10-07

欢迎来到来自 WMR 的 WordPress 社区播客 Press This。 每集都有来自社区的嘉宾,并讨论 WordPress 开发人员面临的最大问题。 以下是原录音的抄录。

由 RedCircle 提供支持

Doc Pop :您正在收听 Press This,这是 WMR 上的 WordPress 社区播客。 每周,我们都会聚焦 WordPress 社区的成员。 我是您的主持人,Doc Pop,我通过我在 WP Engine 的角色以及我在 TorqueMag.io 上的贡献来支持 WordPress 社区。 您可以在 Red Circle、iTunes、Spotify 上订阅 Press This,也可以直接在 wmr.fm 下载剧集。

在这一集中,我们将与来自 Delicious Brains 和现在的 WP Engine 的 Iain Poulson 坐下来讨论最近发布的 Advanced Custom Fields 6.0 以及他的团队发布的一系列很酷的新功能。 伊恩,非常感谢你今天加入我们。

伊恩·波尔森:谢谢。 很高兴来到这里。

DP:我很高兴有你在这里。 我觉得我对此有所了解,但我想听听你自己的话。 您的 WordPress 起源故事是什么?

IP:是的,所以我在 2009 年被介绍给 WordPress。我很快就意识到它有多么棒,并开始为朋友和家人建立一些网站,并建立了自己的博客并开始运行。 然后我在做一项更严肃的与 IT 无关的工作,有一次,我和妻子搬到了伦敦,我们都离开了 Facebook,我们建立了这个照片共享网站我认为这是一个只有我们家人才能看到的私人 WordPress 博客。 但是我的妻子刚刚迷上了 Instagram,并不太热衷于手动从 Instagram 保存图像并将它们放到网络上,以一种不同的方式放到 WordPress 网站上,你知道,这不是很容易. 所以,是的,它只是促使我构建我的第一个插件来自动将内容从她的 Instagram 拉入网站。 我刚刚遇到了一个错误,比如,只是想出如何在 WordPress 中做某事,构建一个自定义插件并让它符合你的意愿,这真的很好。

所以是的,从那以后我一直在开发免费和高级插件。 我最终摆脱了我在 2013 年左右担任的那种 IT 角色,尝试全职在 WordPress 上尝试构建插件,最后我在伦敦的一家机构做一些自由职业然后在此期间,在 Delicious Brains 找到了这个角色。 那是 2014 年,我想是因为我是自由职业者,我儿子的预产期是 11 月,我看到 Delicious Brains 的工作在 8 月或 9 月出现。 感觉就像,也许我应该在生活中更加稳定一点,把一个孩子带到这个世界上。 这是您认为的事情之一,其余的都是历史,因为从那时起我一直在 Delicious Brains 和现在的 WP Engine 工作,这是有史以来最好的事情之一。 所以,是的,当时这是一个很好的决定。 是的,这绝对是一段​​漫长而美好的 WordPress 之旅。

DP:我喜欢听到关于人们如何从需求开始的故事,而且似乎很多人都是从照片博客开始的。 我早在 2010 年就已经在写博客了,但我迷上了 Instagram,而且我很有可能正在使用,我认为 Integrate 是您用于 Instagram 集成的插件。 我不确定我使用的是哪一个,但我有一种感觉,这可能是我第一个连接到我的博客的。 所以我很欣赏你在那里所做的。

IP:这太疯狂了,不是吗? 这是互联网的一个小世界。

DP:是的,我还想再强调一下你正在开发的 Flip WP 的其他项目之一,这是另一个很棒的工具,你有一堆非常酷的项目正在做,但是我们将讨论您目前在 WP Engine 的工作以及您当前的角色。 你能告诉我们你现在在哪里以及你现在在做什么吗?

IP:是的,很明显,随着 Delicious Brains 收购插件并转移到 WP Engine,我是 ACF 的产品经理,我在 Delicious Brains 做这个,但也有许多其他类型的角色。 但我专注于 ACF,与 WP Engine 的团队合作,我们将继续发展并照顾 ACF。 我们是插件的管家。 它是其中之一,它已经存在了很长时间,它是从原作者 Elliot 那里搬来的,他对他非常敬佩,大喊大叫,因为这个插件真是太棒了。 我是一个长期的用户,我为它开发,从那以后我就喜欢它。

因此,通过 Delicious Brains,现在有了 WP Engine,我们正在照顾这个插件,我们有责任让它变得更好,继续让它变得更棒,这只是对社区的一种责任,因为有很多人喜欢它那里。 你知道,有数百万用户在使用它。 所以是的,在 WP Engine 中,这是我的主要关注点,真正专注于它并照顾它是件好事。

DP: A-Team [笑声] Advanced Custom Fields 团队有多大。 A-Team [笑声] 你们都出现在你的面包车里,你就像,让我们自定义一些字段。 现在的团队有多大?

IP:所以现在它比以前更大了,这很好,因为在 Delicious Brains,无论如何它通常都是一家小公司,显然与 WP Engine 的规模相比。 但是我们有两个产品开发人员,很明显我自己是产品经理,但也管理开发人员。 我们有一个设计师,他是一个小型营销团队的一员,但他们在 Delicious Brains 中开发其他插件,所以它不仅仅是一个致力于 ACF 的设计师,或者一个致力于 ACF 的营销团队。 但是现在我们已经有了,在 WP Engine,工程师们已经加入了 Atlas 团队中的一个现有团队,他们现在已经有七人了,这很棒。

我们还受益于拥有一支专门的营销团队和更广泛的团队,在我们需要时可以打电话,这太棒了,因为当你在一家小公司时,你会戴很多帽子,实际上,美女现在让 WP Engine 照顾 ACF 意味着我们可以调用更多资源。 所以我真的很高兴看到你知道它在这种情况下如何成长。

DP:您如何描述开发人员和其他用户使用高级自定义字段的方式?

IP:是的,它很有趣,因为它无处不在,每个人都知道它。 他们使用它。 这是一把瑞士军刀,可以以不同的方式使用,因为它实际上是 WordPress 的一个很好的扩展。 这是我认为随着时间的推移很多人已经离开的这些事情之一,“它可能应该是核心。” WordPress 不仅仅是一个博客平台,很明显,很长一段时间以来,它都试图将自己定位为不仅仅是一个博客平台。 但作为一个真正的 CMS,它有点失败,我认为 ACF 只是让它成为一个 CMS。 它使它成为一种强大的网络框架,人们可以在那里为他们的客户创建自己的定制内容管理系统。 就是这么强大。

由于这种灵活性,我们肯定会看到 ACF 的广泛使用。 你有一些人会安装它,因为他们正在为客户创建一个小册子主题,他们正在向“关于”页面或类似页面或“联系页面”添加几个额外的字段,或者他们正在添加一个跨站点使用的全局设置的选项页面。 但另一方面,有些人正在使用它来为目前非常类似于网络应用程序的大型网站提供支持,因为他们依赖于 WordPress 的用户管理或身份验证。 他们正在添加自定义帖子类型来做事并添加所有字段,你之前提到过 FlipWP,它就像一个市场网站,它是用 WordPress 和 ACF 和其他东西构建的。

它为一些比你想象的更大的事情提供动力,我们现在从 ACF 博客中获得了一些案例研究,这些案例研究是关于在大型网站或有趣用例上使用 ACF 的公司。 因为,我认为这就是问题所在——除非你使用它,否则很难理解 ACF 有多强大,而且从营销的角度来看这是一个挑战,因为当你查看文档站点时,它是相当的——除非你知道原因,否则它很枯燥后面使用这些功能。 但是案例研究令人惊叹,因为它们有点像,这就是网站试图实现的目标,这就是它的外观,这就是它需要做的。 这就是 ACF 实际上是如何帮助网站开发人员做到这一点的,以及实际用户添加内容的方式,你知道,最近的一个是捐赠类型的网站。 所以,是的,其中一些帖子绝对值得查看,我们还有更多帖子,因为它确实突出了用例的多样性。 甚至简单地说,肯定有大量用户使用 ACF 和 Elementor 等页面构建器来构建站点。 因此,它不仅仅是经典的 WordPress,到处都有一些自定义字段,然后将它们添加到您的模板中。 远不止于此。

甚至从 ACF 的经典方面,块编辑器,现在在 WordPress 和完整站点编辑中。 我们有 ACF 用户正在使用块编辑器,但他们正在使用 ACF 块功能,这是 PRO 插件的一部分,但它允许人们轻松使用他们的 ACF 字段和他们知道的 PHP 模板语言,它们习惯于在 ACF 中,但用于创建自定义块。 他们不必立即提高技能并学习创建自定义字段所需的所有 JavaScript 和 React 工具。 因此,它使他们能够在他们对基于块的开发的了解和喜爱之间无缝连接,并且它使他们的客户能够在块编辑器中创建内容,这种编辑器正被越来越多地采用。 但他们的发展得到了 ACF 的帮助。 所以是的,肯定有很大的范围,有很多人口统计和用户类型,但这很有趣,因为我们必须以这些方式帮助每个使用 ACF 的人。

DP:在短暂的休息之后,我们将更多地讨论新的块功能以及高级自定义字段 6.0 中的新功能和新功能。

DP:您正在收听 Press This 是 WMR 上的 WordPress 社区播客。 我叫波波医生。 我在这里与来自 Advanced Custom Fields 的 Iain Poulson 一起向我们介绍几周前推出的 Advanced Custom Fields 6.0 中的新功能。 Iain,您能告诉我们一些新功能吗?

IP:所以是的,6.0 是一个大版本,真的,它在很多方面都很重要。 它是在 WP Engine 收购 Delicious Brains 插件之前开始的。 它的主要重点是 UI 刷新。 它的时间很长,范围也很长,感觉很长,因为我们在两者之间有过这种转变,对吧。 所以它肯定已经很久了。 但是,是的,主要关注点是,我们已经获得了旧的插件 UI——因此 ACF 的管理员将在那里用户添加他们的字段组,并将他们的字段添加到字段组中,并得到所有类型的定义——该管理用户界面已被重新设计。 我们试图保持接近原作。 我的意思是,原始 ACF 在管理员中看起来像 WordPress。 我们试图保持这些路线,但试图刷新它。

我们已经推出了对其他 Delicious Brains 插件的更新,更新后的 UI 略有不同,你知道,更现代一些。 所以它也随之而来。 但这不仅仅是 UI 更改。 我们尝试在编辑字段时解决插件的用户体验问题。 所以,是的,我想我们稍后再谈。 发布不一定有一个主题,它是一个东西的集合,UI 是一个重要的部分。 我们还知道,当 ACF,尤其是 ACF 块时,它与 WordPress 的功能非常相关。 因此,例如,当 WordPress 更改诸如完整站点编辑之类的内容时,您必须顺其自然,并尝试保持一致,因此有时我们的版本会稍微受制于我们需要如何改进以及我们如何与WordPress 和 ACF 块是其中的重要组成部分。 这是该版本中的另一个重要示例。

DP:所以我知道更新的 UI 对你来说是一个充满激情的项目,但这并不是彻底的大修。 它只是解决一些你已经有一段时间的问题,或者让事情更容易找到?

IP:是的,它结合了这种轻重的皮肤,刷新尝试让它看起来更现代,并在一定程度上使其与我们的其他插件保持一致,但这也是解决一些问题的好时机存在的用户体验问题和缺点,我认为因为 ACF 已经存在了很长时间,所以有很多你可以接受的东西。 对于初次使用的用户来说,用户体验肯定存在一些细微差别。 显然,我们有很多非常习惯于做事方式的现有用户,但我们试图尝试解决一些问题。 每次都让我印象深刻的一件大事——我仍然将 ACF 用于我的个人网站和其他事情,我们将它用于 Delicious Brains 网站和 Advanced Custom Fields 网站。

所以我们是我们自己产品的用户,但每次我进入某个领域时都会受到打击。 当我单击字段更改设置时,它会打开字段抽屉,它会占据整个页面,因为您可以使用整个厨房水槽方法来显示字段的所有设置。 然后很难导航,因为你有点迷失了从那个领域完全接管屏幕。 因此很难找到下一个字段,或者您知道,添加下一个字段或返回到前一个字段。 因此,我们试图减少管理屏幕中所有内容所占用的垂直高度。

所以最重要的是我们采用了之前刚刚布局的字段设置,一个接一个,这增加了页面的长度。 我们将这些设置逻辑地分组在一起,并将它们放在选项卡后面。 因此,垂直间距的改进是巨大的,因为字段设置自然要小得多。 因此,您可以在正常尺寸、MacBook 屏幕或其他任何设备上看到大概三个字段设置。 但是,对于进来并想要添加新字段然后突然将所有这些东西扔给他们的新用户来说,这并不是压倒性的。 他们可以按照逻辑顺序通过选项卡来思考,“好吧,你知道,这些是我的字段类型、字段名称、标签键的基本设置,然后让我考虑验证。 我希望它是必需的吗? 我需要一些条件逻辑吗?” 并且它引导他们通过创建领域的经验比以前更多。

是的,当您在该字段编辑屏幕中看到很多东西打开时,这只是另一件事,然后很难想到,我该如何关闭它? 我如何回到更狭窄的空间,然后我可以添加或找到“添加新字段”按钮。 因此,我们改进了您可以单击以关闭字段抽屉的位置。 有一个像人字形一样的小箭头,显示它是打开还是折叠。 所有这些现在都是可点击的,而在此之前,要找到如何关闭它是相当挑剔的。 我们在顶部有这个工具栏,它会在滚动时保持粘性。 因此,无论您在页面上的哪个位置,它都将始终位于顶部,其中将具有“保存字段组”按钮。 因此,您不必一直滚动到顶部来保存更改。 你有一个添加字段按钮,所以当你需要添加一个新字段时它总是在那里,你不必为了做一些基本的事情而与布局和 UI 作斗争。 所以,是的,我们希望很多这些东西本身看起来很小,但放在一起肯定会有一些改进,你知道,总的来说。

DP :那是你说的Repeater Pagination,对吧?

IP:所以这是 6.0 中它自己的独立功能。 但这更像是,当您编辑一个字段组时,您在该字段中有 100 个字段,或者您知道,即使在该字段组中也有 10 个字段。 这就是你定义字段的地方,你点击一个打开它,它就占据了整个屏幕。 然后你必须去找,“现在我想改变它下面的设置。” 而且很难导航,这只是字段定义,它们是插件管理的一部分。

但是,是的,Repeater Pagination 是一个很好的标注,因为它也是 6.0 版本的重要组成部分。 所以只是这背后的一些背景,中继器字段,它是 PRO 插件的一部分,它允许用户定义一个中继器类型的字段,并将子字段添加到这个中继器。 因此,例如,您有一个非常简单的代理网站,您想显示所有员工,但必须有人输入该数据。 它可以是 10、20、30 或任何工作人员。 中继器字段使您能够说,对,该字段将包含人员列表的数据,子字段将是“名称”。 这将是一个文本字段。

接下来可能是“位置”,可能是一个下拉菜单、一组数据、一个位置列表,然后可能是他们的头像或头像的图像。 例如,当您现在在“关于”页面上,并且正在 WordPress 管理员中编辑“关于”页面时,您将获得包含此重复数据集的元框。 所以你会进去说,添加新的员工,然后你可以填写姓名和我们定义的所有字段。 然后很明显在前端,它将以设计师想要的任何方式呈现——在网格或列表视图或其他方式中。 这就是中继器的力量。

令人惊奇的是,当然,使用 ACF 的用例也各不相同,因此人们在转发器字段中存储五行不同的数据,但有时人们使用它来存储数千行数据,这取决于它是什么。 使用中继器的最大问题是,在 6.0 之前的 ACF 5 及更低版本中,当您编辑包含中继器字段数据的页面时,它会加载每一行数据,并且这使得页面的整个加载速度变慢。

有时肯定会出现超时问题,类似地,当您在Repeater 中添加数据或编辑数据并点击“保存帖子”时,它必须将所有数据发回以保存它。 所以你会发回数千行,你知道,也许是五个,也许是 10 个子字段。 因此,您有大量数据输入,这些数据可能会导致站点出现性能问题,并且可能无法加载或无法保存。 而且,你知道,人们有,我的意思是,这是我们长期以来一直有的东西,人们来支持问题,因为这是一个问题。 因此,我们试图做的是缓解这些类型的中继器字段的这些问题。 它在示例中不起作用,或者在我与员工一起提供的示例中甚至不需要它,如果您有 20 名员工,因为它会快速加载并且不需要保存大量数据。

但是对于拥有大量数据集的用户,我们添加到 6.0 的中继器分页设置是一种解决此问题的方法。 其中一个Repeater Layout 设置就像一个表格网格,基本上,Repeater Pagination 设置,一旦你打开它——你可以说我们应该在每页显示多少行——所以当内容编辑器在一个发布或页面编辑视图,一旦他们加载页面,它只会加载例如前 10 条记录,这将比加载 1,000 条记录快得多。

他们可以翻页到下一页并返回最后一页,因为所有这些东西。 它会即时加载数据,因此不会在加载时阻止它们。 其中最重要的部分之一也是我们如何保存数据。 无论您点击保存后它们是否已更改,我们都不会发送所有行,而是仅发送实际更改的数据。 因此,新记录、已删除记录以及对现有记录的更新。 因此,储蓄也将快得多。 这是其中之一,除非您需要,否则您可能不需要它,如果有意义的话。 但对于拥有大量数据的人来说,这是天赐之物。

DP:当然。 我当然想更深入地了解这一点,但我们会稍作休息,然后我们会回来与 Advanced Custom Fields 的 Iain Poulson 谈谈 Full Site Editing 如何改变了 ACF 的情况。 所以请继续关注。

DP:您正在收听 Press This,这是 WMR 上的 WordPress 社区播客。 我是来自 Advanced Custom Fields 的 Iain Poulson 的主持人 Doc Pop,该公司刚刚推出了 ACF 6.0,并进行了许多重大改进。 我们刚刚讨论了 UI 上正在发生的事情以及那方面发生的一些重大变化。 Iain 经常出现的一件事是完整站点编辑及其对 WordPress 的影响。 我有点想知道像高级自定义字段这样的巨型插件,完整站点编辑对 ACF 有什么影响?

IP:是的,我认为它确实产生了影响,很明显,因为我们正在为使用 ACF 块的块编辑器开发提供服务,所以我们必须努力保持领先地位并努力确保我们重新兼容。

有趣的是,在 Full Site Editing 出现之前,我什至不记得是哪个版本的 WordPress,但在此之前,ACF 有点早受到影响,因为 Query Loop 块的块类型是发布,我认为可能在 WordPress 5.8 中。 那是在完整站点编辑之前,但我们需要使 ACF 块与之兼容。 他们还引入了块驱动的小部件编辑器,而不是像经典小部件那样,因此我们必须确保与 ACF 块相关的所有内容都可以使用它。

所以,是的,我们对 ACF 块的工作方式进行了大量改进。 以及大量使用它的人,比如带有 ACF 的 InnerBlocks 的想法。 6. 因此,它确保那些倾向于使用 ACF 块的块编辑器的 ACF 用户,可以通过全站点编辑器和 WordPress 开发(Gutenberg)获得最佳体验,因为它被称为插件,并且块编辑器具有变化很快,而且一直在变化。 所以我们必须跟上这一点。 我们一直在内部讨论它,而且在博客文章中,6.0 几乎是 ACF 块的第二版,我们为开发人员和人们提供了一种注册 ACF 块的新方法,因此他们现在可以使用块点 JSON注册他们的 ACF 块的格式,这更符合 WordPress 的方式,人们如何在本机上使用 WordPress 注册他们的自定义块。

但这意味着,通过这样做,我们可以获得 WordPress 为该块点 JSON 格式提供的所有好处。 因此,为块添加的任何新功能都会自动传递给 ACF 块,因为我们使用注册块的相同方式。 肯定比我想象的要多得多,让 ACF 块和 ACF 与完整站点编辑和块编辑器保持一致,但是,是的,知道我们的用户如何使用它以及喜欢 ACF 块,这是值得的,但是是的, 完整的网站编辑肯定是相当重要的。

DP:是的,绝对的。 有趣的是,ACF 6.0 基本上是 ACF 块的第二版。 有很多我们还没来得及谈论。 有很多变化。 在节目结束时,我们将让人们知道他们如何更多地了解您以及您正在从事的工作并提出任何问题。 我很快就想知道,在这个新版本的高级自定义字段中,您最兴奋的一个功能是什么?

IP:我个人认为这可能是Repeater Pagination 功能,因为它是其中之一,如果你被它击中,那么它会真正提高你的生活质量。 但它也是我们自己遇到的这些事情之一。 我们一直在deliciousbrains.com 网站上使用Repeater Field,你知道,这是我过去大量使用的东西。 但是我们遇到了同样的问题,我们不得不解决它。 我们已经看到了性能问题。 因此,这种分页设置非常好,可以对在我们网站上工作的开发人员说,“你想去看看 ACF 6.0 构建,看看这是否有所改进吗?” 这就像“是的,哇,这解决了我们遇到的很多问题。” 所以,是的,这是个人的。

DP:嗯,就像我说的,有很多我们没有谈过的。 Advanced Custom Field 6.0 中加入了许多新事物。 伊恩,我感谢你今天的时间。 如果人们想了解更多关于 Iain 正在做什么的信息,他们可以在 Twitter @polevaultweb 上访问他,或者您可以访问 advancedcustomfields.com 以了解有关高级自定义字段的更多信息。

感谢您收听 WMR 上的 Press This WordPress 社区播客。 您可以在 Twitter @thetorquemag 上关注我的冒险经历,或者您可以访问 torquemag.io,我们每天都会提供类似的教程、视频和采访。 因此,请查看 torquemag.io 或在 Twitter 上关注我们。 您可以在 Red Circle、iTunes、Spotify 上订阅 Press This,也可以直接在 wmr.fm 下载。 我是您的主持人 Doctor Popular,我通过我在 WP Engine 的角色支持 WordPress 社区,我喜欢每周在 Press This 上关注社区成员。 谢谢收听。