许多人抱怨开始构建古腾堡区块和应用程序的障碍。学习曲线陡峭,主要是由于开发环境的安装和配置困难。此外,扎实的JavaScript、Node.js、React和Redux知识是这个相当复杂的秘诀的必备要素。 官方的WordPress区块编辑器手册为开发人员提供了大量信息,但您可能会发现自己迷失在这些细节的海洋中。 值得一提的是,Gutenberg项目的首席架构师Matías Ventura在接受WP Tavern采访时所报告的内容: 虽然有些人可以快速学习它,但这对人们来说仍然是一个很大的障碍。我认为这有几个层次;文档在组织和演示方面可能要好一个数量级。我希望我们可以在那里做更多的事情。 考虑到这一点,我们决定提供一个分步教程,旨在帮助我们的读者开始使用Gutenberg区块开发。 古腾堡区块开发先决条件 什么是古腾堡区块? 设置您的WordPress开发环境 初学者区块脚手架的演练 项目:建造你的第一个古腾堡区块 古腾堡区块开发先决条件 对于本教程,唯一需要的技能是对WordPress插件开发有很好的了解,并且至少对HTML、CSS、JavaScript和React有基本的了解。 这会是一个雄心勃勃的项目吗?你打赌它会的! 在完整性和简单性之间找到正确的折衷方案或决定包含哪些主题和省略哪些主题并不容易。 希望中高级读者能原谅我们没有深入研究某些概念,例如React状态、Redux存储、高阶组件等。这些主题需要额外的空间和注意力,并且可能对于开始区块开发来说太高级了(除非您是 React 开发人员)。 出于同样的原因,我们不会涵盖与Gutenberg区块开发相关的一些更高级的主题,例如动态区块和元框。 有了本文结尾您将获得的知识,您将能够立即开始享受乐趣并提高工作效率。 一旦您开始构建区块,您将准备好进一步提高您的技能并自行构建更高级的古腾堡区块。 什么是古腾堡区块? 自2018年12月首次发布以来,区块编辑器在各个方面都得到了极大的改进:更强大的API、更高级的用户界面、改进的可用性、大量新区块、全站点编辑的首次实现等等. 简而言之,即使古腾堡仍在大力开发中,它也已经走过了漫长的道路——如今,区块编辑器已成为可靠的功能性页面和网站构建器的成熟候选者。 从开发人员的角度来看,Gutenberg是一个基于React的单页应用程序(SPA),它允许WordPress用户在WordPress中创建、编辑和删除内容。但是,这不应该让您想到传统内容编辑器的增强版。 我们想明确这一点: Gutenberg不是常规的WYSIWYG编辑器。相反,它重新定义了WordPress中的整个编辑体验。 在古腾堡,内容被划分为区块,这些区块是用户可以用来创建文章和页面或整个网站的“砖块”。 但从技术上讲,什么是区块? 我们喜欢WordPress的定义: “区块”是用于描述标记单元的抽象术语,这些标记单元组合在一起形成网页的内容或布局。这个想法将我们今天在WordPress中实现的概念与短代码、自定义HTML和嵌入发现结合到一个一致的API和用户体验中。 标题、段落、列、图像、画廊以及构成编辑器界面的所有元素,从侧边栏面板到区块工具栏控件,都是React组件。 那么,什么是React组件?W3Schools提供以下定义: 组件是独立且可重用的代码。它们的用途与JavaScript函数相同,但独立工作并通过render()函数返回HTML。 在WordPress 5.8中使用Gutenberg区块 虽然Gutenberg提供的编辑体验与经典的WordPress编辑器相比是全新的,但WordPress将您的内容片段存储在数据库中的方式根本没有改变。这是因为Gutenberg是一个在WordPress中运行的应用程序,但不会改变CMS的核心工作方式。 使用Gutenberg创建的文章(包括文章、页面和自定义文章类型)仍存储在wp_posts表中,与经典编辑器完全相同。 但是在使用Gutenberg创建的文章中,您会在表格中找到更多信息,这些信息代表了通过Classic Editor与Gutenberg创建的文章之间的根本区别。 这些信息看起来像HTML注释,它们有一个特定的功能:分隔区块: 代码编辑器视图中的博客文章。 区块分隔符告诉WordPress要在屏幕上呈现什么区块。它们还为JSON对象中的区块属性提供值。这些道具决定了区块应该在屏幕上呈现的方式: wp_posts存储在表中的博客文章 设置您的WordPress开发环境 设置现代JavaScript开发环境需要扎实的高级技术知识,例如Webpack、React和JSX、Babel、ESLint等。 被吓倒了?不要!WordPress社区已经通过提供强大的工具来帮助您避免混乱的手动配置过程。 为简单起见,我们不会在本文中介绍转译(不过,我们建议您在了解区块开发的基础知识后熟悉一下)。相反,我们将介绍两种替代工具,您可以使用它们在几分钟内快速轻松地设置现代JavaScript开发环境。您可以选择对您的项目最方便的一个。 设置JavaScript开发环境以构建Gutenberg区块是一个三步过程: 安装Node.js和npm 设置开发环境 设置区块插件 让我们开始吧。 1. […]

























