Jetpack 7.1 向插件搜索结果添加功能建议
已发表: 2019-04-02Jetpack 7.1 于本月早些时候发布,其中包含 WordAds、营业时间、联系信息、幻灯片和视频的新块。 此版本还悄悄地向插件搜索屏幕添加了建议,这一变化并未得到开发者社区的好评。 如果用户搜索具有 Jetpack 已提供的功能的插件,该插件将在第一个插件卡槽中插入一个人工(且可忽略)的搜索结果,识别相应的 Jetpack 功能。

尽管插件搜索结果中的这些建议并未在 7.1 发布帖子中作为标题功能呈现,但它已清楚地列在更改日志中的增强功能下。 在 WordPress 开发者 Mehul Gohil 在一个实时网站上发布了它的截图后,越来越多的人开始注意到它:
如今,#WordPress 管理员中的插件搜索会建议产品/附加组件。 我看到这些建议的未来将被插件作者用来在某些插件搜索词中将他们的产品放在首位,以便像管理员通知这样的追加销售。
你怎么看待这件事? #DontHijackWPAdmin pic.twitter.com/TERjrPgEt6
— Mehul Gohil (@mehul_gohil0810) 2019 年 3 月 26 日
使用已安装的插件操纵搜索结果,甚至插入人工结果,是 WordPress.org 上托管的插件中的一项重大新发展。 Automattic 为其他希望在用户匹配某些搜索词时推荐自己的附加组件或扩展的插件作者开创了先例。
在该功能的初步概念验证中,Jetpack 产品负责人 Beau Lebens 解释了向搜索屏幕添加建议的动机:
我们已经看到安装和激活 Jetpack 的人经常在 wp-admin 的 Plugins > Add New 屏幕中搜索 Jetpack 功能(甚至按名称)。 这个新模块试图发现这些搜索,并提供一个人工搜索结果,表明他们正在寻找的东西在他们已经拥有并且已经处于活动状态的 Jetpack 中。
自首次发布以来的八年时间里,Jetpack 已发展到 45 个模块。 大多数用户并不熟悉插件提供的所有内容。 事实上,许多用户甚至可能自己都没有安装 Jetpack,因为它通常预装了主机。 这些建议可能会阻止用户添加替代的第三方插件,因为 Jetpack 在结果中的模块位置巧妙地暗示这些是其现有模块的劣等选项。
许多开发人员对该功能感到不安的原因之一是因为 UI 未能明确表明这是人为的结果,而不是由插件目录的算法生成的结果。 尽管它旨在更多地用作通知,但对于普通用户而言,它实际上与当前实现中的广告没有区别。 它推出的时间不长,但随着时间的推移,它甚至可能使插件开发人员更难提供与 Jetpack 功能竞争的插件。
插件搜索结果中的功能建议成为 Post Status 的 Slack 上的热门话题,Automattic 的 Gary Pendergast 在这里重申了 Jetpack 团队的意图。
“我一直在与 Jetpack 上的一些人谈论正在发生的事情,”Pendergast 说。 “我认为团队的最终目标非常好,它解决了 WordPress 的一个真正问题。 网站所有者经常会安装大量他们不需要的插件,这最终会产生各种安全、性能和稳定性问题。 在这个特定的用例中,如果网站所有者正在寻找 Jetpack 已经处理的功能,那么所有者应该意识到这一点。”
Pendergast 还表示,他认为 WordPress 核心应该为任何插件提供一个 API,以便能够做类似的事情。

插件团队表示 Jetpack 的人工搜索结果不会违反 WordPress.org 指南
尽管很容易想出不同的方式来滥用这种途径来宣传插件的现有功能,但 WordPress.org 的插件团队已准备好根据具体情况处理各种实现的潜在涌入。
“这并不是在做任何广告——它只是为你已经拥有但可能不知道的插件添加搜索结果,所以这并不违反任何规则,”Samuel “Otto” Wood 说。 “如果它以某种方式具有误导性,那就不同了。”
Wood 表示,团队讨论过这个问题,但得出的结论是,其他插件中类似功能的任何实现都需要进行审查,看看它是否在做任何误导性的事情。
“实际上,这总是需要某种判断,”伍德说。 “例如,如果一个插件要插入其他插件的搜索结果,那就不行了,因为它具有误导性。 但是,情况并非如此。 它只是想说“嘿,你已经安装了一个插件,它可以满足你的需求”,所以它试图在这方面有所帮助。 诚然,这不一定是实现该目标的最佳方式。 但它非常有效。”
Wood 并没有硬性要求人工结果可以被忽略,但他表示,只要开发人员在通常不会出现的屏幕中插入一些东西,具有消除功能就是很好的用户体验。 他认为许多其他插件作者不太可能实现类似的东西,因为大多数不是几十个插件和附加组件的集合。 但是,这种建议似乎也适用于包含数十个 Gutenberg 块的块收集插件。
“当所有重要的插件作者都实现它时,用户真的很难,”Gohil 在回应他在推特上发布的截图评论时说。 “他们正在使用 JS 通过钩子 'admin_enqueue_scripts' 侵入插件搜索,这并不好。 我不赞成。”
如果更多插件作者开始添加建议,用户可能会在看到任何真实结果之前看到几行人工结果,具体取决于他们安装了哪些插件。 插件开发人员已经在集思广益,以消除功能建议。 不久之后,像 Hide Jetpack Promotions 这样的插件将删除人工搜索结果以保持 WordPress.org 提供的结果。
Wood 表示,插件团队不打算为插件作者编写任何新指南,以便在搜索屏幕上创建自己的功能建议实现。
“差异始终是一种意图,”伍德说。 “JP 的目的是通知用户存在他们可能不知道的功能。 这是试图对用户有所帮助,而不是试图阻止竞争。 它不会删除搜索结果。 它不会对它们重新排序或过滤它们。 它只是添加了一张关于您正在搜索的功能的卡片。 如果你没有JP,那么它什么也做不了。 这不是为其他插件或类似的东西做广告。”
Jetpack 也在跟踪超过三个字符的搜索词,Wood 确认这也在指南范围内,只要向用户披露即可。
“直到你同意 ToS 之后,整个跟踪模块才会激活,老实说,这是允许的,”伍德说。 “他们会跟踪很多东西以获取统计数据等。 实际上,许多其他插件也是如此。 只要您在跟踪任何内容之前先询问用户,就允许跟踪数据。 选择加入是规则。”
Wood 说他发现搜索词跟踪是不必要的,因为 WordPress.org 已经通过其在 ElasticSearch 上运行的新搜索系统收集了这些信息。
“无论如何,我们在 WordPress.org 服务器上获得了所有搜索词,所以我们和他们都已经有了它们,”伍德说。 “毕竟,Automatticians 构建了我们最新的插件搜索引擎。 当他们真的收到所有通过搜索引擎运行的搜索时,使用 Jetpack 跟踪他们似乎是一种浪费。”
Jetpack 的人工搜索结果虽然可以忽略,但仍占据榜首,完全绕过了算法。 它使 Jetpack 的内置功能看起来像是一个提升列表或优于目录中可用的所有其他选项。
尽管建议的模块可能与其他 Jetpack 功能比第三方插件更和谐地工作,但这些模块在功能方面是相当通用的。 它们满足了大多数用户的基本需求,但很少提供比专用于执行类似操作的独立插件更多的选项。 用户很可能正在寻找 Jetpack 提供的替代品。 通过切换轻松关闭搜索结果中的建议的能力可能对外交大有帮助。
