有很多人会将自己归类为开发人员,并会说他们可以用任何给定的语言编写代码。通常,优秀开发人员和优秀开发人员之间的区别与程序无关,工作得如何以及错误有多少。伟大的开发人员使程序可以工作,但是他们以一种将各种组件彼此隔离开来的方式。
我想通过几个例子,将这些相同的思维过程应用于SEO。在许多地方,分离例如网站的各种逻辑组件是有益的。
你们中的许多人都会听说过MVC(模型 – 视图 – 控制器)的缩写,它是用于分离网站各个组件的软件模式的一个例子。在这种情况下,模式被设计为将信息存储(模型)与用户界面(视图)分开。控制器管理视图和模型之间的通信。
在大型开发团队中,您经常会在开发的每个阶段找到专家,因此您可以了解模型(通常映射到数据库)和所有业务规则。在前端(视图),您拥有HTML和CSS方面的专家。我从来没有完全把控制器的角色从模型中分离出来,所以我会略过这一点,希望你不要注意。
无论使用何种软件模式对您的网页进行编码,都是(并且已经很长一段时间)将网站结构与网站呈现分开的良好做法。HTML不应包含有关如何显示页面的信息。这应该纯粹是页面所需的结构和语义信息。这是使用表格进行布局的网站的主要缺点之一,几乎在所有情况下都必须在HTML中放置大量的表示信息。
大多数网站采用的最终分离级别是将内容与网站结构分开。这通常通过将内容放在数据库中并在请求页面时将其嵌入HTML中来完成。
实际上,我们(以及其他许多人)更进一步,将这些内容存储为基于文本的格式,其中大部分HTML被剥离,并被称为markdown的标记语言取代。这意味着我们的客户不必学习HTML来更新他们的网站,但是通过遵循一些简单的规则,我们仍然可以在语义上标记代码。
这个理论一切都很好,但这对SEO有什么帮助呢?就像开发团队一样,主要的好处是可以让不同的人在网站的不同区域工作。
1.技术现场审查变更
绝大多数(如果不是所有)我们在项目早期请求的更改都可以在技术站点审核中找到,该审核应该由在后端(或通常是站点模板)的团队实施。这通常可以完全独立于任何内容变化来查看,并且可以如此实现。
那些没有模板系统的人几乎肯定会知道必须更新网站的每个页面以进行简单的更改所带来的心痛。这是大多数网站在6,7或8年前编写的方式,这也是大多数网站很少更新的原因。
2.内容创作
在大多数大型组织中,要求人们创建内容以关键词进行思考是很困难的。你想要的最后一件事是他们也是创建HTML的人。通过将内容与模板分离,您可以确保仍然优化不了解HTML或语义标记的人创建的内容。
3.网站重新设计
我当然很快就会对网站感到厌倦,过去两年我们已经看到Distilled网站的两个主要版本,并且在此期间还有更多的调整。如果我们的内容没有任何关于它将如何在我们的内容管理系统中显示的信息的存储,那么所有这些都会变得更加困难(不值得做)。
另一方面,我的一个烦恼就是当我在挖掘源代码时(我不小心你),你会看到如下内容: Text
创建类似的类名不计算在内。想象一下,你的设计师出现并希望将上述元素的风格改为12pt verdana中的绿色文本。你现在有一个标有“blue arial 14pt”的文字,这是绿色和verdana。接管更新CSS的人会为此而爱你。
一致性
具有大量页面的网站的一个问题是没有工具可以帮助您无法查看每个页面的代码。由于知道网站是使用模板或包含视图的模式编写的,因此您可以确信,如果给定页面以正确的方式使用H1标记,那么类似类型的其他页面也将如此。
我想我要说的是,拥有优秀的开发人员不仅要了解如何编写好的网站(或工具或程序等),而且如何将它们写得好*将会产生巨大的差异。这显然不是SEO的好处,但是任何可以开发或创建内容的东西都将使您的SEO工作更加有效。