我们喜欢在 Letterdrop 中使用 Webflow,但它的 预装的 CMS 对于发布博客来说可能很麻烦:
- 这 缺乏权限支持、协作功能和 SEO 工具 如果不借助外部应用程序,您的团队将很难在内容创作和策略上展开合作
- 它没有与 Google Docs 或其他写作平台集成,因此需要手动复制和粘贴(并处理尴尬的格式更改)
- 需要对 Flexbox、CSS 网格和其他前端编程概念有丰富的专业知识,这会耗费时间,尤其是当你的主要职责不是 Web 开发时
简单来说, Webflow CMS 不适合内容营销团队.
明白我们的观点了吗?
虽然对于设计师和网站开发人员来说,无需编码即可快速创建网站非常棒,但对于想要批量发布内容的营销人员来说,这可能会令人沮丧。
由于对员工的心理健康关注不足,组织在留住员工方面面临挑战
大多数公司最终会将数据从其作者、编辑和营销人员偏爱的应用程序(例如 Airtable、Google Docs、Notion 或无头 CMS)汇集到 Webflow 中。
怎么办?你有两个选择: 利用代码链接您的 CMS 通过 这 Webflow API 或利用无代码解决方案 例如 扎皮尔.
让我们指导您完成每个步骤。
解决方案 1:通过 Webflow API 发布
这 Webflow API 可以操作 CMS 项目 - 创建、更新或删除。但是, 编码知识是先决条件.
我们假设您熟悉 Webflow Designer,并且具备以下技术能力: 处理 API。如果没有,请将此问题转交给工程师或继续执行后续部分,使用 Webflow 等无代码平台(如 Zapier)。
如果您还在关注,那我们就开始吧。
以下是您应该掌握的一些基本术语:
关键 Webflow 概念
收藏
A 在 Webflow 中收集数据库镜像.
它充当内容存储库并方便从 Webflow 站点上的集合中引用数据。
例如, 博客文章 Webflow 中的集合封装了博客文章数据,以及一个预设的博客模板,其中包含基本博客所需的字段(例如,纯文本类型的标题、富文本类型的正文、数字类型的阅读时间等)。主题来自 Webflow模板 通常包含博客功能。
Webflow 中的默认博客模板
收藏品
集合项代表博客文章集合中的单个帖子.
每篇文章都引用一个特定的博客文章页面,该页面包含与博客集合架构中定义的相同的数据。
您可以在 Webflow CMS UI 中制作收藏品(尽管你努力避免这样做)或 通过 API 嵌入集合.
以收藏品为代表的博客文章
所以, 如何从后端服务器建立到 Webflow 站点的连接 发起 API 请求?
开始与 WebFlow 站点的连接
先决条件:
- A Webflow 网站提供博客合集
- 如果模板不存在,您可以在 启动 Webflow 模板 汇编
- A 服务器 喜欢 Node.js 或者 Django
- 如果选择 无服务器部署,选择 解决方案,例如 AWS Lambdas 或者 Google 云功能
- 这 Webflow 软件开发工具包 使用您选择的语言 或相应的库 执行 API 请求(例如 要求 或者 Axios 对于 Node.js)
通过 API 令牌启动 Webflow 站点连接
在修改 Webflow 站点数据之前,必须建立连接。这可以通过 个人 API 密钥.
获取网站 API 密钥的流程:
➡️访问您的 Webflow 仪表板。
➡️ 导航到要连接的站点并点击 三个点 (选项菜单)。
➡️选择“设置”。
访问设置
➡️前往集成,找到 API 访问,然后点击“生成 API 令牌”。
(保持令牌的安全;避免共享或将其提交到公共存储库)。
生成 API 令牌(不要担心,我们已经更改了这个令牌,它不是我们的)
➡️ 将此 API 令牌合并到每个 API 请求的标头中。
这是 标题结构示例:
标头:{'Accept-Version':'1.0.0',授权:'Bearer YOUR_API_TOKEN_HERE','content-type':'application / json'}
复制
➡️ 使用 curl 或 邮差 在您的终端上执行查询并验证其功能。
curl --location --request GET 'https://api.webflow.com/sites' --header '授权:持有者 YOUR_API_TOKEN_HERE'
复制
➡️成功执行后,将显示您的 Webflow 站点的完整列表,类似于:
[ { “_id”:“6ee3aee90fa1d92e4f760a0f”, “createdOn”:“2022-09-03T19:45:49.426Z”, “name”:“Letterdrop v2”, “shortName”:“letterdrop-v2”, “lastPublished”:“2022-10-01T00:24:42.955Z”, “previewUrl”:“https://screenshots.webflow.com/sites/6ee3aee90fa1d92e4f760a0f/20221001001825_e2d60b485c0f28cd97cd0b6b0f6bf9af.png”,“时区”:“美国/洛杉矶”, “数据源”: “6ee3aee90fa1d92e4f760a0f”}]
复制
➡️ 你可以选择 将此 API 令牌与 Webflow SDK 结合使用. 使用 JavaScript SDK 时,请确保在初始化 Webflow 对象时提供 API 令牌。
例如:
const Webflow =require("webflow-api"); const webflow = new Webflow({ token: "将您的 API 令牌保存在环境变量中并在此处引用它", });
复制
您现在已从服务器链接到 Webflow 站点。太不可思议了!
通过 API 检索集合字段
现在让我们 在您的博客文章集合中建立一个新的集合项目.
➡️ 启动设计器视角 适用于您的 Webflow 网站。
➡️ 点击“CMS 收藏” 在左侧菜单中。
选择博客文章集合
➡️ 点击“设置”选项 在本系列的右上角。
重复的集合 ID
➡️ 你会发现这个系列拥有 集合 ID
. 复制它。
我们将在 API 调用中引用此内容。这样,我们就能识别出在哪个 Collection 中生成项目(例如,您的博客文章)。但是,在此之前,我们应该 识别此集合中的字段 以及如何引用它们。
➡️ 让我们 执行 API 调用 在你的 shell 中检索他们的标题。
curl --location --request GET 'https://api.webflow.com/collections/YOUR_BLOG_POSTS_COLLECTION_ID' --header '授权:持有人 YOUR_API_TOKEN_HERE' --data-raw ''
复制
➡️ 此操作应产生 类似这样的回应:
{ “_id”:“580e640c8c9a982ac9b8b778”, “lastUpdated”:“2022-10-23T21:32:39.561Z”, “createdOn”:“2021-11-23T00:43:35.049Z”, “title”:“博客文章”, “slug”:“博客”, “singularName”:“博客文章”, “fields”:[ { “title”:“标题”, “slug”:“名称”, “kind”:“纯文本”, “mandatory”:true, “modifiable”:true, “helpText”:“”, “identification”:“9260ce6725dc623d8f5e6768728d6660”, “validations”:{} },{ “title”:“URL”, “slug”:“slug”, “kind”:“纯文本”, “mandatory”:true, “可修改”:true,“帮助文本”:“”,“标识”:“6a474648c22ad777613f6429dd510415”,“验证”:{} },{“title”:“Body”,“slug”:“post-body”,“kind”:“RichText”,“mandatory”:false,“可修改”:true,“帮助文本”:“”,“标识”:“24207669717864dc68511c63fb32c281”,“验证”:{} },... }
复制
这里, 你可以感知到以下内容:
- 这 博客文章标题 在内部被称为
姓名
- 这 博客文章的标题 在内部被识别为
蛞蝓
- 这 博客文章正文 内部引用为
后文
➡️ 在你的收藏中记下这一点,因为你需要 在形成您的收藏品时使用这些字段标题.
通过 API 构建集合项字段
现在,利用 建立收集项目 API 端点 以及用于在 Node.js 中执行 API 请求的 Request 包,我们将 执行 API 调用来构建 Collection 项目.
➡️ 将您的数据合并到请求正文中,将数据纳入 字段
.(您需要 利用字段标题 摘自上一节)。
const request = require('request'); const options = { method: 'POST', url: 'https://api.webflow.com/collections/YOUR_BLOG_POSTS_COLLECTION_ID/items', headers: { 'Accept-Version': '1.0.0', Authorization: 'Bearer YOUR_API_TOKEN_HERE', 'content-type': 'application/json' }, body: { fields: { name: '通过 API 发布我的就职博客文章', slug: 'my-inaugural-blog-post-via-api', _archived: false, _draft: false, author: '580e640c8c9a982ac9b8b778', 'post-body': '<p>以下是博客文章正文的 HTML</p>', 'post-summary': '我的博客文章摘要' } }, json: true }; request(options, function (error, response, body) { if (error) throw new Error(error); console.log(body); });
复制
➡️ 您现在应该可以在 Webflow 上的收藏中查看您最近创建的博客文章!🎉
观察它是如何表示的,“预计出版。“ (这 表示 您的博客文章仍待发布).
通过 API 分发您的 Webflow 网站
最终阶段是传播您的网站,以便您刚刚创建的博客文章可以在您的网站上发布。
您可以使用 发布站点 API 端点.
➡️ 首先,你需要 记录域名 您希望发布到。
➡️随后, 导航至 Webflow Designer.
➡️ 点击“发布” 在右上部分 检索域列表 您可以在哪里发表文章。
我们仅拥有标准 Webflow 域名。未配置任何自定义域名。
➡️你会发现一个 webflow.io
域,如果您配置了自定义域,该域也将可见。您需要 将它们集成到 API 调用的有效负载中:
const 请求 = require('request'); const 选项 = { 方法:'POST', url:'https://api.webflow.com/sites/YOUR_BLOG_POSTS_COLLECTION_ID/publish', 标头:{ 'Accept-Version':'1.0.0', 授权:'Bearer YOUR_API_TOKEN_HERE', 'content-type':'application/json' }, body:{domains:[YOUR_DOMAIN_1, YOUR_DOMAIN_2]}, json:true }; 请求(选项,函数(错误,响应,主体){if(错误)抛出新的错误(错误); console.log(主体); });
复制
➡️ 留出一两分钟的时间发布。(发布您的 Webflow 网站所需的时间根据其规模(即您拥有的 CMS 集合项目和页面的数量)而有所不同)。
➡️ 随后,你应该能够 浏览你的实时博客,看看你撰写的博客文章 通过您网站上的实时 API。
恭喜!你成功了!🎉
目前, 您可以修改和删除博客条目 使用 更新集合项端点 和 删除集合项端点。此过程反映了项目的创建。
探索解决方案 2:参与 Zapier Webflow 集成
如果编码不是你的强项, 欢迎来到 sans code 部分!您之所以来到这里,很可能是因为前面的部分看起来像是一堆乱七八糟的文字(我敢打赌工程师们也有同样的感受 😅 )。
扎皮尔 使您可以将 Webflow 与众多最流行的应用程序链接起来 用于自动执行您的任务。
Airtable 至 Webflow Zap
➡️ 登录您的 Zapier 帐户并创建一个新的工作流程。
➡️点击“创建 Zap“位于左上角。
➡️ 寻找你的源应用程序。(这是您撰写原创博客文章的地方。它可能涉及 Airtable、Google Docs、Notion 等)。
在 Zapier 中建立 Airtable 触发器
我们将利用 空气表 用于此插图。
➡️ 选择 Airtable 作为你的应用后, 选择“新纪录” 作为触发事件。每次您连接的 Airtable Base 中生成新记录时,此 zap 都会起作用。
选择 Airtable 作为源应用程序
➡️ 提供您的 Airtable API 密钥 根据 Zapier 的要求。此密钥可以位于您的 Airtable 帐户页面.
Airtable API 密钥
➡️ 随后,在获取你的密钥后, 嵌入到显示框中 在 Zapier 中。
在 Zapier 中输入您的 Airtable API 密钥
建立连接后,您的 Airtable Base 可能以这种方式呈现:
我们认为这是组织内容营销工作的一种拼凑方式,但这就是你的 Airtable 条目的样子
➡️ 现在,你可以 安排触发器.
➡️ 选择 Base 中的相关 Base 和表 在仔细检查扳机之前。
➡️ 包含一行 在你的 Airtable 中 评估信息是否被传输.
在 Zapier 中建立 Webflow 操作
接下来,通知 Zapier 根据 Airtable 触发器执行哪些操作.
➡️ 选择 Webflow 作为您的应用 在行动部分。
➡️ 选择“创建直播项目”作为事件。(由于 Zapier 中没有专门的发布 Webflow 操作,因此我们选择“Live”而不是“Regular”。因此,我们将同时制作项目并发布)。
Webflow 创建实时项目操作
➡️ 将出现一个提示,指导您登录 Webflow 并 指定您想要链接的网站.
Webflow OAuth
➡️ 选择您的 Webflow 收藏,用于博客文章和 对齐 Airtable 中的字段 与您的 Webflow 博客文章中的内容相同。
Airtable 和 Webflow 之间的映射字段可能会变得混乱
➡️ 以确认数据的准确性。
就到此结束了!您已全部设置完毕。🎉
激活 zap 后,每当您在 Airtable 中附加记录时,它都会将 CMS 集合项目添加到 Webflow 并实时发布。
虽然这个过程在理论上似乎是有效的,但在现实中它带来了许多挑战。
很有趣,不是吗?
不是吗?
Webflow-Zapier 集成中公认的限制
- 扎皮尔 无法消除 一个项目 从 CMS 使用其 Webflow zap;它仅具有建立和更新收集项目的能力
- 您缺乏在发布之前暂存项目的能力 由于您无法精确控制站点部署
- Airtable 的用户界面对于制作大量内容来说很糟糕
如果你正在寻找一种简单的方法通过 Zapier 将内容传播到 Webflow, 考虑利用独特的 CMS.
Letterdrop 采用 Webflow 进行出版
未来又会怎样?
选择 CMS 能够发布到 Webflow — 一个 专注于作家 并且真正没有代码.
信滴 推出专为内容营销量身定制的无头 CMS. 它无缝发布到您的 Webflow CMS 收藏夹。
使用 Letterdrop 轻松发布
Letterdrop 为您提供熟悉的 CMS 体验,但功能却更加强大
Letterdrop 是发布到 WebFlow 的综合工具。它 促进项目管理、内容日历安排和分发的内容运营平台.
Letterdrop 提供以下功能:
- 目前唯一可用的正版 Webflow CMS 集成 — 叮!叮!叮!Letterdrop 更新您的 Webflow 收藏并在不到一分钟的时间内迅速将其发布到您的 Webflow 网站。它管理每个特定场景,例如自定义字段和预览。事实上,我们被公认为 Webflow 官方合作伙伴。
- 内置SEO优化工具 — 提供自动化建议,以结构化方式增强 Google 的文章,并从竞争页面中获取见解
- AI 驱动的写作辅助和 Grammarly Business — 帮助集思广益、内容创作和语法验证
- 预览 — 在 Webflow 临时网站上有选择地发布您的文章,以便在点击发布按钮之前预览其外观
- 带语法高亮的代码 — 支持 Markdown,可指定语法高亮的语言,并将其转换为与 Webflow 兼容的格式, Prism.js.
- 动态内容日历 — 自动更新项目状态并通知贡献者必要的行动
- 一键式电子邮件通讯和社交媒体分发 — 自动通过社交媒体和电子邮件传播您的博客文章。无需再追逐营销活动。
- 实时协作和修订历史 — 团队成员可以在项目上进行互动和协作,所有这些都在您的 CMS 中同步
Letterdrop 中的 SEO 优化器
开始使用 Letterdrop 进行出版以简化 Webflow
我们理解您需要尽可能多的支持。但是, 深入研究显然不适合你需求的 CMS 会导致挫败感.
Webflow 擅长网站建设。不过,对于博客发布, Webflow 的 CMS 需要工程工作来部署 API 使用 Webflow 开发您的个性化 CMS 工具。这相当艰巨。
当然, 足智多谋的营销人员可以通过 Zapier 拼凑解决方案。尽管它整合了一系列无代码实用程序,但它仍然表现为 “胶带”修复 以实现您的目标。webhook 请求的数量是有上限的,超过此限制将导致 Zap 无法激活。 甚至 Zapier 也承认这一点。
哦亲爱的!
凭借其 SEO 工具、抄袭检查器、内容日历、角色和权限以及一键发布,Letterdrop 简化了 Webflow。它实现了 Zapier 能做的一切…… 以及更多 — 减去“Frankenbox 胶带、发动机着火、机翼脱落、我们撞向山上”的焦虑感。