之前博客一直使用的是以文章名的形式命名的固定链接,这样做可以很方便地使得链接与文章相契合,但是对于文章标题中的中文字符如果不转换为字母的别名后期可能会因为中文字符乱码的情况导致很多问题,为此我又使用 纯代码实现WordPress网站链接自动转英文 这篇文章中的方法通过百度翻译转换为英文,前两天发现由于调用百度翻译API导致网站速度变慢了很多(具体请看这篇文章>>>记录网站加载过程中Waiting(TTFB)时间过长的解决过程 ),于是又不得不变为手改文章别名的日子了。手改别名不但繁琐而且容易漏掉,更重要的是文章名翻译成英文的话如果不慎重精简字符同样会导致文章链接过长、不简洁的问题。综合各方面情况考虑,最终我决定还是选择自定义固定链接的方式以 post_id.html 的方式进行命名。

说了这么多还是先来对比一下对于这篇文章如果我分别使用文章名(sample-post)、别名(postname)、文章ID(post_id)作为固定链接的链接样式吧。

三种固定链接样式对比

文章名: http://blog.quietguoguo.com/修改固定链接为post_id-html,简单了解wp固定链接/

由于中文字符的原因,上述链接在分享的时候会乱码变成如下样式:http://blog.quietguoguo.com/%E4%BF%AE%E6%94%B9%E5%9B%BA%E5%AE%9A%E9%93%BE%E6%8E%A5%E4%B8%BApost_id-html%EF%BC%8C%E7%AE%80%E5%8D%95%E4%BA%86%E8%A7%A3wp%E5%9B%BA%E5%AE%9A%E9%93%BE%E6%8E%A5/

别名:http://blog.quietguoguo.com/modify-the-fixed-link-to-post_id-html-simply-understand-the-wp-fixed-link/

文章ID:http://blog.quietguoguo.com/1985/

最后为了实现页面的伪静态化以利于SEO,这里我自定义固定链接为:/%post_id%.html,所以这篇文章目前的固定链接为:http://blog.quietguoguo.com/1985.html

相比之下是不是最后一种链接样式更符合大多数人对网页的认知?最后我们再来总结一下WordPress自定义固定链接的一些常用标签及优缺点。

常用固定链接标签

%year%%monthnum%%day%%hour%%minute%%second% :这几个标签是用来在固定链接中显示文章发布时间的。感觉没啥用处,还显得链接过长影响美观。而且更重要的是链接中带有日期再次更新文章的话链接可能会变,原有链接就成了死链,新链接还需要等待重新收录。

%category%:链接中带分类目录名。这个标签尽量也不要使用,因为网站内容的交叉,很多内容可能同属于不同的分类下,而如果我们链接中带有分类目录名、文章又属于不同的分类,很容易引起文章内容重复或冲突。

%author%:链接中带有作者名。这个可有可无,全凭大家喜好了,不过为了网站链接的简练我的博客固定链接上并没有带有作者名。

%postname%:链接中带有别名。我之前使用的一种固定链接形式,一般情况下我们编辑文章时会有一个文章名,同时WordPress会自动根据文章名生成别名,但是由于汉字字符容易乱码以及后期各种问题的原因,之前我是使用代码将别名直接翻译成英文的,后来由于调用百度翻译API严重影响网站速度就弃了。而且百度直译的别名有些长,不美观。

%post_id%:以文章ID作为固定链接。我目前乃至日后决定使用的一种固定链接方式,优点是链接简练美观,纯数字的链接后期不会因为中文字符的原因引发各种问题,比如404。缺点是很难通过链接联系到文章内容。

关于伪静态

WordPress是一款由PHP驱动的博客程序,其生成网页文件是动态的,我们可以通过 WP Super Cache 或其他静态化缓存插件实现伪静态,但是相对于真正的静态网页文件,WordPress生成的网站链接默认是不带有“.html”扩展名的,然而对于大多数访客来说,似乎只有带“.html”的才能叫做网页,当然还有一种说法是静态网页文件有利于搜索引擎收录, 具体效果我没测试过不知道。既然都说这么好我也借着这次更改固定链接的机会一块给加上了“.html”。具体添加方式是:

默认自定义固定链接:http://blog.quietguoguo.com/%post_id%/

添加.html扩展名链接:http://blog.quietguoguo.com//%post_id%.html

相信大家也看出来了,只要删除最后一个“/”然后添加上.html即可,这里我是在文章ID后面添加的,其他固定链接格式与这一样。