Discourse 论坛搜索引擎优化(SEO)终极指南

如果您担心您的社区在搜索引擎结果(SEO)中的表现,那么在优化您选择的社区软件时,需要牢记一些问题。我们经常在支持收件箱和我们的公共社区中被问及 Discourse 如何处理 SEO 的问题。在本文中,我们将尝试揭开最常见的 Discourse SEO 问题的神秘面纱,包括:

如果您是搜索引擎优化的新手,请务必在深入了解之前查看我们关于社区 SEO 的入门文章

准备好了吗?让我们开始吧!

标题、描述和其他元数据

我们最常被问到的问题之一是,管理员如何自定义标题标签、描述和其他 HTML 元数据元素,以影响页面在搜索结果页面上的显示方式。在最基本的层面上,Discourse 会根据页面上的内容自动生成这些元素。标题标签从站点或主题标题生成,描述从第一篇文章内容生成,依此类推。

除了编辑相应的设置或内容字段本身之外,无法在每个单独页面的元数据上设置自定义值。 例如,如果您想编辑主题在 Google 上显示的标题,请编辑主题标题。下次 Google 抓取该网站时,它将获取新标题。编辑主题标题以准确反映主题内容是所有社区管理者都应该做的一项常见做法。如果标题准确反映了主题的内容,主题通常会获得更多(和更好)的回复。

由于两个原因,描述有点棘手。首先,描述是根据主题第一篇文章的内容自动生成的。要调整描述,您需要编辑该帖子的内容。如果您在社区准则或条款中设定了期望,这应该不是问题;但是,如果您过于激进地仅出于 SEO 目的编辑帖子,您可能会因为过多地改变社区成员的声音或删除他们认为重要的信息而让他们感到不安。

描述的第二个挑战是 Google 和其他搜索引擎经常创建自己的描述以显示在结果页面上。搜索引擎通常会从页面中选择与搜索词相关的最相关内容片段。这是因为搜索引擎主要关注您的内容与用户查询的相关性,而且它们现在已经足够聪明,可以知道页面上的内容。

这让我想到关于 SEO 最重要的一点:相关性为王。虽然优化您的标题、描述和其他元数据可能会提高您在搜索引擎结果页面 (SERP) 上的点击率,但您可以做的最重要的事情是确保您的社区正在生成与人们搜索内容相关的高质量内容。

站点地图

meta.discourse.org 上站点地图的屏幕截图

站点地图是一个 XML 文件,其中包含您网站上每个页面的路径列表。过去,我们的研究表明,站点地图仅对较大的 Discourse 站点有用。然而,最近几个月,我们发现站点地图可以极大地帮助 Google 正确索引站点上的每个公共 URL。

虽然搜索引擎可以通过抓取链接来索引您的网站,但站点地图提供了一些好处——即它为抓取工具提供了所需的所有信息,而无需手动抓取。我们看到手动抓取会导致在索引过程中遗漏页面。人们常说,拥有站点地图对您的 SEO 工作至关重要,因为它们允许搜索引擎更有效地抓取您的网站。然而,我们发现这个建议只是部分情况。

公共 Discourse 站点的增长在很大程度上依赖于访问者通过搜索找到该站点。为了帮助索引过程,Discourse 开箱即用地支持站点地图,无需添加插件从 2.9.0.beta4 版本开始

此外,由于我们是一个单页 JavaScript 应用程序,我们已向 Discourse 添加了一个没有 JavaScript 的静态 HTML 视图,以帮助网络爬虫更快地索引您的网站(并使禁用 JavaScript 的用户仍然可以看到网站的内容)。

关于 Discourse 站点上索引内容的简要说明——在某些情况下和地方,您的 Discourse 站点将不会被索引。这包括如果您的站点设置为仅登录(不会索引任何内容),或者如果您的站点是公共的,则某些区域(如用户页面)将不会被索引,以避免索引重复内容。

让我们谈谈子文件夹

关于一个备受争议的 SEO 话题,存在着不同的建议:将站点托管为子文件夹还是子域名。两者之间的主要争论是排名——网站作为主域名下的子文件夹排名更高,还是没有明显差异?

Google 的 Matt Cutts 和 John Mueller 过去都曾表示,在 Google 看来,子文件夹或子域名之间基本上没有区别。

但其他人,例如 Moz 的创始人兼前首席执行官 Rand Fishkin,分享了从子域名迁移到子文件夹并看到流量增加的网站的案例研究。

另一方面,另一个 SEO 工具 Ahrefs 最近分享了一些显示相反效果的案例研究。

GitHub 将其博客从子文件夹更改为子域名,然后又更改为专用域名。查看上图,您可以看到迁移后流量下降,这是预料之中的,并且是由重新索引引起的。然而,一旦搜索引擎赶上来,没有一种方法被证明比另一种方法更能为网站带来流量。

同样重要的是要记住,域名并不是影响您的 SEO 性能的唯一因素。我们将再次说明这一点——其他人链接到的相关内容(反向链接)是您网站排名的主要影响因素。如果您的网站对找到它的人没有太大帮助,那么您的排名就不会很好。

此外,上面链接的 Ahrefs 文章引用了可能影响排名的多个其他因素,例如:

  • 临时信号更改
  • 跟踪或测量问题
  • 被阻止的页面
  • 重新设计
  • 内部链接更改
  • 已删除/更新的内容

总而言之,Google 表示在子文件夹中托管没有 SEO 好处,并且具有相互矛盾证据的研究是不可靠的,因为有许多变量会影响给定网站的 SEO 性能。

这如何影响您的 Discourse 站点?首先,多年来我们一直建议 Discourse 站点使用子域名而不是子文件夹,因为搜索引擎的目标是以同等的方式对待它们。

此外,虽然在子文件夹下托管 Discourse 站点是可能的,但它增加了相当多的技术复杂性。根据我们的经验,子文件夹需要特殊的代理,将流量正确路由到正确的位置,并且通常会在出现问题时引入更多技术问题并增加停机时间。

开源的美妙之处在于您可以选择最适合您网站的方式!但是,我们强烈建议 Discourse 站点,无论是与我们一起托管还是自托管,都使用子域名,因为它具有卓越的可支持性和稳定性,因为对网站搜索排名的影响不确定。

迁移和重定向

我们经常将社区从其他平台迁移到 Discourse,我们经常被问到的一个常见问题是,他们的 Google 排名是否会因为 URL 结构发生变化而受到影响。简而言之,答案是否定的,但有一些技术细节需要牢记。

在我们的团队迁移过程中,我们与客户合作确定导入是否需要 URL 映射。Discourse 有一个内置的重定向功能,专门用于此目的。如果您的旧社区在 example.com/community.php?tid=555 有一个 URL,我们将在导入过程中创建一个重定向,以便它正确映射到 example.com/t/-/1234 的新主题 URL。下次您的网站被抓取时,抓取工具将跟随重定向到正确的 URL 并在搜索引擎的数据库中更新它。

另一个需要牢记的细节是您社区的主要 URL 是否在此过程中发生变化。如果它保持不变,除了将其指向新的托管位置之外,您无需做任何工作。但是,如果 URL 从 example.com 之类的更改为 community.example.com,您将需要设置从旧域到新域的服务器端 301 重定向(包括传递完整路径和查询参数),以便 Discourse 可以正确解析重定向。完成此操作后,搜索引擎将再次抓取该网站,跟随重定向,并更新其数据中的记录。

专注于最高价值的项目

如果您从这篇文章中学到了什么,那就是首先关注 SEO 的关键组成部分,即与用户搜索的相关性,并在您能够处理 SEO 的其他技术元素时处理它们。如果您的网站包含与搜索者相关的内容并且其他网站链接到它,Google 和其他搜索引擎将对其进行排名。其他元素,例如元数据或站点地图,虽然很重要,但远不如内容的相关性重要。