今天安装了个插件:Google Sitemap Generator 2.7.1
。
关于Google Sitemaps可以参考我的这篇《Google Sitemaps》。
Update:今天升级了这个插件,现在是3.0 beta 6版,而插件的名字也改成了XML Sitemap Generator for WordPress
。3.0版一直beta着,我记得我在刚开始使用的时候就有3.0beta了,好像是2006年1月就有了。现在,从我刚开始用这个插件的2006年4月1日到现在,差几天就一年了。趁着升级到WordPress 2.1系列,我把这个插件也升级了一下,并制作了简体中文包。目前网站上的最新版本是3.0b6,是2007年1月在WordPress 2.1刚发不久后就发布的,而svn里则是3.0b7。新版本修改很大。
Google Sitemap Generator
插件可以自动生成sitemap.xml文件,这个文件可以被Google、Yahoo等搜索引擎读取,以便搜索引擎更快地找到网站里的所有页面,从而使搜索引擎更快速地收录网站的页面。插件自动生成sitemap.xml文件后,到Google Sitemaps注册并提交自己的sitemap.xml文件地址后,就一切OK了。当有新页面生成的时候,这边的插件会自动更新sitemap.xml文件。而Google会定期访问这个sitemap.xml文件,并从中解析出网址来。在Google Sitemaps网站可以很方便地查看网站的一些信息,比如读取错误、查询字符串、外部链接数、PR分布。但是,插件里也提到,不注册Google Sitemaps也可以让Google来读取sitemap.xml文件,只要开启插件的通知Google功能即可。另外,Yahoo的Yahoo Site Explorer也支持Sitemaps协议了,在添加feed的地方,除了可以添加RSS和Atom格式的feed,也可以添加sitemap.xml文件。[via]
虽然从功能上来说,我觉得它比不上Dagon Design Sitemap Generator
插件,因为Google很看重链接的,如果它没找到有一个网页链接到这个页面的话,它是不愿意收录这个页面的。但是,这个插件是自动工作的,每次发布文章的时候sitemap.xml文件就自动更新,而Google会定期来取文件,不用我们操心,我用了一年了都很少进过它的后台,所以,开着就是了,何乐而不为呢?
这个插件下载安装后激活就可以了,需要中文可以下载我做的Google Sitemap Generator中文包。sitemap.xml文件会生成在Blog的根目录下,如果根目录是可写的,那么这个文件会自动生成。如果不可写,那么需要手工上传个sitemap.xml文件,空的就可以了,然后把权限设置成可写。设置好后,进入后台设置页面,插件会提示进行首次创建sitemap.xml工作的。
插件设置页面的右方是相关链接,包括插件本身的相关链接,以及Google Sitemaps网站和Yahoo Site Explorer网站和Sitemaps协议的网站。
插件设置页面的最上方会显示上次重建状态。比如重建时间、是否成功通知了Google和Yahoo、以及整个重建过程所花费的时间。如果通知Google和Yahoo花费时间过长,那么插件还会提示你最好禁用相关功能以免影响速度。
常规设置中,可以设置的有:
- Sitemap文件:可以选择是否写入sitemap.xml文件和sitemap.xml.gz文件。这两个文件是一样的,只是后者会被用gzip方式压缩。这两个文件任选一个就好了,选好后就提交相应的地址给Google Sitemaps。如果你的页面很多的话,可以选择gzip压缩文件,这样可以节约一点带宽。不过sitemap.xml文件很小的,我300篇文章不过sitemap.xml文件不过50K,也占不了多少带宽。
- 建立方式:第一项应该选上,在发布或修改文章时自动重建sitemap.xml文件,这样插件就可以保证及时更新sitemap.xml文件,不用我们手工重建了。第二项则是用于使用第三方工具修改WordPress数据库时,可以让第三方工具修改数据库后直接访问插件给出的地址,则插件会在这个地址被方式时开始更新sitemap.xml文件。我能想到的第三方工具就是采集器了,呵呵。
- 更新通知:重建时通知Google和Yahoo,这个功能可以在sitemap.xml文件被重建后向Google或者Yahoo发送通知,它们收到通知后就会马上赶来读取新的sitemap.xml文件了。这个功能和WordPress在发布新文章后Ping一些地址的功能很相似,比如我设置了Ping FeedBurner,在发布文章后,WordPress自动向FeedBurner网站发出ping,FeedBurner收到后会很快来读取feed的更新。不过这个功能很占时间,所以一般还是不用。搜索引擎收录也不是feed,不需要非得争那几分钟一小时的。
- 高级选项:可以设置让插件尝试在重建sitemap.xml文件时临时提高内存限制和运行时间限制。因为重建sitemap.xml需要查询整个网站所有的网址,所有可能需要占用很多内存和时间,而PHP可以对脚本的运行时间和占用内存进行限制的。如果建立sitemap.xml时没有提示错误,那么就不需要用这一项。而XSLT样式,则是使用XSLT样式表来修改xml文件的显示样式。使用插件自带的样式表,然后在浏览器里直接浏览sitemap.xml文件就可以看到效果了。
附加页面部分可以在sitemap.xml文件里添加WordPress之外的网页。比如某个WordPress Blog的地址是foo.com/blog,那么你可以把foo.com或者foo.com/abc等WordPress之外的地址加入到这里,以便Google也能找到这些地址。添加时要注意,如果添加的地址在sitemap.xml文件所在目录之外,那么这样的地址Google是不接受的。因为很多网站,比如一些免费空间是二级目录的,Google规定sitemap.xml文件只能包含它所在目录以及下级目录中的网址,上级目录或者其他目录的就不允许,当然,其他网站的网址就更不行了。所以,最好的办法是把sitemap.xml文件放在网站的根目录下。这可以通过下面的“Sitemap文件位置”部分进行设置。
优先级部分,可以设置文章优先级的计算方式。第一种是不计算,所有文章用同一个优先级。第二种是根据文章的评论数计算,直接用当前文章评论数除以总评论数得出一个数值。这样算出来的值可能很低,毕竟没有那篇文章的评论能占到总评论的百分之几十吧,而没有评论的文章,算出来的自然是0咯。第三种也是根据文章的评论数计算,但是它是用当前文章评论数除以所有文章评论数的平均值,我觉得这种方法比较好一些。第四种是通过Popularity Content插件计算,要安装了这个插件才会显示这个选项。
Sitemap文件位置部分,默认是当前Blog安装目录下,你可以改一下文件名。当然你也可以使用自定义,那么需要填写文件的绝对路径和访问的网址。
Sitemap内容部分,可以设置sitemap.xml文件包含哪些页面。可以选择首页、文章页、独立页、分类页、存档页、作者页。
更新频率部分,可以设置每类页面的更新频率值。定义上,这个值是要求搜索引擎隔多长时间访问某类网址,但是这个值只是个搜索引擎提供参考,只要按实际的更新频率进行设置就好了。比如首页可能每天或者隔几个小时就更新,而分类页和存档页可能更新会少一些。存档页是分成两部分的,第一个是当前月份的存档页,也就是说,比如现在是2007年3月,那么2007年3月这个存档页的更新频率最好调高一些,需要和首页一样高,因为当有新发布的文章时它们两个就会更新。第二个是除了当前月份外的其他存档页,它们只有的旧的文章被修改时才会有更新。
优先级部分,可以设置每类页面的优先级。定义上,这个值是要求搜索引擎优先访问哪些页面。但是,它也和上一条一样,仅供搜索引擎参考,你都设成1.0也是没有的。你可以单独设置每类页面的优先级,但是文章页被分成两类,一个是在没打开自动计算时文章页的固定优先级,一个是打开自动计算是文章页的最小优先级。把最小优先级设到0.5或者其他,这样就可以保证没有评论的文章不至于优先级为0了。
设置好了以后就不用管了,插件会自动在发布新文章时更新sitemap.xml文件,而Google也会定期来读取sitemap.xml文件。插件作者在readme文件里也建议用户不用过多的调整选项,默认的设置就可以工作的很好,当有错误或者有特定的需要时才需要来修改某些设置。
另外,Google Sitemaps和Yahoo Site Explorer都支持feed,最好把自己的feed加入进去,毕竟feed里的网址都是最新文章的网址,正需要搜索引擎早日收录呢。WordPress里如果修改了Permalink结构的话,feed地址会是"foo.com/feed/"这样,这会被Google识别为目录。正如上面所说,这样的feed里除了/feed/目录以外的地址都是不被允许的,而无论文章还是分类页面都不可能在/feed/目录下。解决办法是,把最后的反斜线去了,用"foo.com/feed"这样的地址就可以了。
请问怎样使用XSLT样式?
.xsl 在那里有?
官方的FAQ里说:“Include a XSLT stylesheet
Since version 3.05b, the plugin ships a default XSLT stylesheet which makes your XML sitemap human readable. ”
具体在那儿呢?
Sorry,
刚刚又重新下了一个压缩包,里面有需要的东西,
才发现原来下载的那个不知何故只有php文件。
还是要谢谢你的翻译工作
谢谢翻译, 很受用
很受用,谢谢
您好,怎么样才可以让Google Sitemap Generator生成的网站地图链接到博客页面内??
我现在都是同时装两个插件Google Sitemap Generator和Dagon Design Sitemap,利用Dagon Design Sitemap做网站地图页面。感觉很麻烦,多装一个插件会影响速度。
可以帮我解决这个问题吗???
这个插件效果不错,好像有新的版本,建议用新版。