Ghost CMS推出原生搜索功能-Native search

via Ghost官方

我们刚刚在 Ghost 中引入了本机搜索功能,让您的读者可以快速、直观地访问您出版物中的任何位置来查找内容。首先,快速概述一下这个新功能是如何工作的。在那之后,关于我们如何(以及为什么)构建和发布此功能的更多详细信息,适合那些已经存在一段时间并要求我们创建它的人!


Ghost Search 开箱即用,适用于任何主题,并允许您的读者搜索所有已发布的帖子、标签和作者。

将搜索添加到 Ghost 站点很容易,可以通过两种方式完成:

  1. 在 Ghost Admin 中添加#/search指向站点导航的链接,您将拥有一个可单击的导航链接,可打开搜索界面。在我们的帮助文档
    中阅读更多内容。
  2. 为主题中的任何元素添加一个data-ghost-search属性(也许是 🔎 图标?),您将有一个可点击的按钮来打开搜索界面。在我们的开发者文档
    中阅读更多内容。

添加后,访问您网站的人只需单击一下即可轻松找到他们正在寻找的内容 - 甚至可以使用Ctrl/Cmd+K键盘快捷键直接打开搜索 UI!

所有官方 Ghost 主题都已更新以支持搜索。所有Ghost(Pro)站点都已经可以访问 Search,并且自托管用户可以使用 Ghost-CLI更新到最新版本。


在 Ghost 论坛上,搜索功能一直是我们最需要的功能。近10年来,每个人都在要求它。那么,我们为什么不早点做呢?对于开发人员和技术用户,这里有一些历史。

搜索是其中一种功能,如果它运行良好,那就太棒了,但如果它运行不佳 - 它比根本没有搜索功能更糟糕。在旧的开源内容管理系统中使用过搜索功能的任何人都会清楚地记得,您搜索确切帖子标题并获得数百个结果的频率......除了您正在搜索的帖子。

整个公司都有成千上万的开发人员致力于做好搜索,比如GoogleDuckDuckGoAlgolia——所以在很长一段时间内,(直到最近)只有4 名产品工程师的产品团队,我们觉得我们做不到将搜索提供到足够高的标准以使其有用。我们也不喜欢每个主题都必须为搜索结果实现自定义的、不一致的 UI 的想法——这在许多其他平台上是一种糟糕的体验。

我们要做的最后一件事是运送人们一直要求的半生不熟的东西,结果却被抱怨有多糟糕而不知所措。

在过去的几年里,一些事情发生了变化。

首先,我们为 Ghost 构建了一个Content API,它可以轻松地以编程方式与站点的完整内容存档进行交互。

之后,我们添加了自定义集成,因此第 3 方服务可以生成自己的 API 密钥来处理 Ghost 内容和设置。

然后,我们想出了如何为 Ghost 的前端构建嵌入式 UI 组件,它可以干净地与任何主题一起放置 - 例如。我们的会员门户

最终,所缺少的只是将这些不同概念联系在一起的链接。Ghost 前端是在服务器端呈现的,并且没有自己的 Content API 密钥来与 Ghost 后端通信。一些聪明的、实施良好的Ghost 3rd 方搜索插件出现了——但它们都有相同的限制:网站所有者必须去手动生成 API 密钥,然后手动编辑他们的主题文件,然后粘贴让搜索工作的关键。不是最好的体验。

这一切在Ghost 5.0中都发生了变化——我们添加了一个默认的 Content API 密钥,该密钥自动包含在每个 Ghost 前端中。

最后,整个 Ghost 团队上周第一次聚在一起,这是 3 年来的第一次(!),在阳光明媚的西班牙静修,我们着手构建一个简单、高质量的搜索功能,该功能适用​​于任何 Ghost 网站。这就是我们今天要推出的。

DSCF2803

不过,它仍然有一些限制。搜索功能索引帖子标题、摘录、作者和标签 - 但它不会搜索帖子内容,它只能索引 10,000 个帖子以确保性能非常快。这些限制是实现搜索功能的难度从“相对容易”变为“哦该死”的地方。

我们对 Search 的下一次迭代的计划是使其可扩展,因此 UI 基本保持不变 - 但可以用技术更复杂的东西(如Algolia)完全替换后端搜索功能和索引以用于大型/需要更多权力的饥饿出版商。

不过,对于绝大多数出版商和创作者来说,今天推出的原生搜索实现将是他们所需要的一切。


特别感谢 Ghost 团队成员:Sodo。
2020 年我们收购了一家非常受欢迎的 Ghost 主题公司 IVEEL,其创始人 Sodo 加入了团队,并立即接管了我们所有官方 Ghost 主题的维护、维护和开发。在加入 Ghost 之前,Sodo 已经在所有 IVEEL 的主题中编写了自己的自定义搜索功能,正是这些代码构成了 Ghost 官方搜索功能的基础(现在也是核心)。


感谢您在我们努力做到这一点时的耐心等待!而且,当然……搜索并不是我们在团队撤退期间开发的唯一要求很高的功能。

订阅评论
提醒
guest的头像

0 评论
内联反馈
查看所有评论
0
希望看到您的想法,请您发表评论x