分类: Windows平台
2014-12-29 14:17:06
两年前的某天,通宵看完的王通的一本SEO书,把一些杂七杂八的东西写在满满一张纸上,比如哪里该调整关键词密度、哪里最好增加alt等等,接下来段时间在威客网站就用这些知识给人写方案。后来几个月,参加了些SEO培训,又稍看了些一线SEO从业者的文章,那时对nofollow的作用什么的了如指掌,可以写个数百字的文章来理论上大谈它在各个环境下的用途,当时觉得SEO就那么些东西了。
当然错了。
后来的两年里,搜索引擎原理方面记得是从看《搜索引擎——原理、技术与系统》开始,第一次真正接触到幕后的搜索引擎。然后逐渐学程序、数据分析等多方面的知识,加上每天分析诸多的排名实例等等,SEO的基础才开始慢慢扎实起来。之后在大型互联网公司中一线从事SEO,每天数据、技术、人脉等接触的要比之前多得多。但却依然觉得,SEO还有太多可以继续探索的东西。
而看到身边的不少SEO,还一直处在我曾经经历过的各个阶段,所以觉得应该写些做SEO的一些阶段中所需要的具备的知识、及其学习方法,从而能更有效的学习、少一些无谓的绕圈子。
一、 对SEO感兴趣的人、SEO专员、或其它需要参与网站SEO相关修改的人,如产品经理
1. 选择性的去看网上别人写的SEO文章,比如一线从业者所写的。如果自己没有对文章质量的足够判断力,也可以完全不看
要始终明确的是,SEO的目的是最终效果(流量、转化),但可以发现的是,网上几乎没任何一篇讲述做SEO的方法的文章,会清晰的提到什么改动会带来什么效果。
因为没什么经验的SEO,他们只能说出模棱两可的东西;而在一线工作的SEO往往限于保密协议与行业道德,一些东西也无法说得很清楚。
同理,SEO书籍也是这样。哪怕偶尔能发现有的书上有一小章节,讲述些很有价值的东西,但也会因为作者不愿意写透,不懂的读者看了还是不会懂。所以所有的SEO书籍,不看也罢。
也同理,不要过于依赖SEO培训,只有少数培训里面稍有一部分干货。况且,若想用最多几十个小时参加的培训,使自己的水平超过从事SEO上千小时的人的话,是绝不可能的事情。
2. 需要具备各种互联网基础常识
互联网的基础常识,若要展开是个太大的话题了。这不仅指的是哪门技术,而是知识的涵盖面。
举个最简单的例子,单独查看某网页上面的html写法时,有人用IE的查看源代码,有人用Firefox的查看元素。虽然都能达成同样的目的,但前者极其低效,被专业人员视为是门外汉做法。
类似这样的经验,没有什么书里面写着、也没什么文章总结,只能在自己日常工作中,自问是否有更高效的方法,并不断尝试各种可能性,才会让知识面慢慢广泛起来。
W3school上面一些基础资料是需要先参考的,它是各类互联网技术的入门网站。当然想让知识面变得广泛,更多的还是需要靠长时间的积累。
这部分,是学习SEO(或其它任何互联网技术)的初期,最需要耗时间去做的事情。
如果想检验常识是否较具备了,可以尝试自答以下问题:
前端、后端分别指的是什么?
JavaScript、Java、PHP分别是什么类型的语言?
服务器、VPS与虚拟主机的区别?
如何查看网页返回的HTTP状态码?
3. 牢记《百度SEO指南》上面的所有内容
《百度SEO指南》是百度官方写的,一份总共才几十页的文档,但已提到了不少SEO需要注意的重点事项。
许多SEO轻视这份指南,觉得百度尽写些没价值的东西,而实际上不然。比如其中提到的两条:避免在重要内容使用ajax、URL需要保证唯一性,这两条非常重要,但我观察过的一些大型网站上,没找到过把这些完全做好的。而这却极大的影响SEO效果,往往一个改动,就可以对某类页面的某项数据指标造成数十个百分点的影响。
《Google网站站长工具帮助》上面有着更详尽的内容。不过因为内容很多,我和公司所有产品经理说的是,这份资料可以考虑参考下,但百度的指南一定要记住。但对于SEO,这份资料至少是需要熟读的。
二、需要写执行方案的SEO
1. 在具备广泛的互联网知识基础上,更深入的去了解一些技术知识
一般来说所有SEO的需求,最终落实到网站上都是技术人员来完成的。但大部分SEO需求,技术上都不是说实现就能实现。
比如一个例子,在子域名的根目录需要批量加入不同的robots.txt,有人或许觉得,不就是传个文件嘛,但多数情况下并不是这样。很多网站的架构中,不同子域名是共用一个根目录的,只能放同一个文件。解决起来其实很简单,把robots.txt用php什么的来动态解析,被访问时判断被访域名,并返回对应内容。但并不是每个程序员都经常遇到这种奇怪的需求,不少人一下想不到这个方法。
诸如这样的很多时候,SEO都应当有能力和技术人员一起商讨解决方案。
可以尝试用以下问题来自我检验:
相关文章链接采用什么样的生成方式?具体到使用某开源程序或某算法的大致操作
除了URL追踪参数可以统计点击来源的具体位置之外,还有什么可行方法?
2. 具备SEO的全局观,注重影响效果的地方,而不要管一些细节
对于基础知识尚可的SEO,这是我发现在执行层面上普遍存在的最大问题。
何谓细节?对着一个预计SEO流量最多也占不到全站总量千分之一的页面,这边图片加个alt、那边关键词删删减减等等。尤其这一大堆修改对于稍大的公司一般都是提交给别人去做的,连累一群人。
而什么不是细节?列表页或内页模版上,这边图片加个alt、那边关键词删删减减等等(仅为举例,可做的有非常多,且大部分方法没法在网上看到)。因为公用页面的模版修改,影响是全站性的,再小的修改也可能让整站的SEO流量有几个百分点的变动。
三、需要把方案写的更靠谱些的SEO
1. 对一门程序语言有所了解,可以很迅速的写出脚本来解决具体需求
此处指的程序语言需要有较快的编写速度,一般来说Python, Ruby, PHP等比较合适,个人推荐Python。
不要想着用市面上现成的软件去解决SEO繁杂的需求,SEO需求的变化永远多于现有程序的数量,这只能依靠临时编写的脚本。
(比如查排名,有时查单个的方便,查100个就稍麻烦了;如果要对比100个里面,有几个自己的排名是高于某个竞争对手的怎么办?又如何结合搜索量,来估算这100个词给其它网站贡献的SEO流量?诸如此类繁杂需求数不胜数。)
哪怕如此,绝大多数SEO会觉得,这应该是程序员的工作。但,这就是造成了处于这个阶段的SEO水平差距的最主要原因。
就算再小的需求,理想情况下和程序员多次沟通后,也要耗去数十分钟才能完成,大些的公司由于执行缓慢,几天完成一个小需求也毫不稀奇。
但比如说查排名需求,由SEO自己写,只要对程序语言够熟也经常写此类代码,2分钟里面肯定可以搞定。
尽管写代码的能力对SEO能力提升的直接帮助半点都没有,但可以帮SEO从一天仅能做一两件事情,提升为一天可以做数十件事情。
也因此,SEO的水平和从业年限往往不成正比。
2. 认识数据,并分析数据
数据可以涉及到的非常广。如流量分析,Google Analytics、日志分析等。日志分析还额外需要学的如Linux基础命令、正则表达式,大网站由于数据量极大,可能还没法分析原始日志,要从数据仓库取数据分析。
除了去分析数据之外还有更多麻烦事,比如确切的理解数据准确所指。
比如Google Analytics所记录的Organic流量,很多人将之视为准确的SEO UV,实际不是。GA的默认指标Visits一般高于UV(Unique Visits),且Organic默认情况下,不记录约20%的百度流量、也完全不记录360、soso、sogou等;如未做特别区分,百度PPC流量、开放平台流量等也会被计入Organic;还有代码在网页上的安装位置与网页加载速度也会影响到数据记录是否完全,等等等等。
哪怕简单的一个“SEO流量”,其背后也包含着极复杂的记录规则。视统计方法的不同,最终数值差个一倍都不奇怪。
当A说网站SEO流量每天100W,B说是200W,这时候应该信谁呢?当然是要先搞清楚每份数据的统计方式。
3.理论上了解搜索引擎原理,再跳出来看看实际的搜索引擎
对于搜索引擎原理,入门推荐看《走进搜索引擎》,之后推荐看《这就是搜索引擎》,不然就算对一些SEO方法知其然,也没机会知其所以然。
但是,尽管对搜索引擎不理解会在SEO上寸步难行,死钻在这些理论中却会显得更糟糕。
百度和Google这样的大型商业搜索引擎上面,都有很多所谓的“拍脑袋”规则。假如说一个人突然想出来,文章长点它的权重就高,那么经过一系列复杂的研究后,文章长度就被正式融入到排序规则中,成为其中一个因素。
类似的,有些规则就纯粹看那个拍脑袋的人有没有想到,因此不要说理论与实际有出入,哪怕百度和Google都有不少出入(但百度抄了Google很多,如其Panda更新,所以接近的地方也不少)。
所以一定要跳出理论,每天多分析些排名实例、也看些抓取、收录数据等,才能实际的了解百度等搜索引擎。
4. 深入理解搜索用户的诉求
这个例子我举了无数次了:
我在北京,想到沃尔玛买东西,搜索“沃尔玛地址”,看到大众点评的页面,用户体验接近完美。不仅有具体地址还有地图,甚至有用户对其的点评。只不过。。只不过为什么这个页面是温州的沃尔玛?。。。
SEO只是发外链么?SEO只是做排名么?SEO只是搞流量么?因此有时候听人说,被K过n个站是每个合格SEO的必经之路此类的论调,哭笑不得。