打造 WordPress 的简易短网址

WordPress 2.8 以后,Permalink 系统已经很完美了,系统能自己判断错误的地址并且指向一个可能存在的地址,举个例子:

比如,这个文章地址并不存在:http://zou.lu/wo/ 但是 访问以后,WordPress 会判断最接近的地址,所以,就跳转到了 http://zou.lu/wordpress-28-released/ ,嗯,很智能吧?这样能有效防止损失的流量。

同样,以前我推荐过 Permalink Redirect 插件,目的是为了防止访问类似 http://zou.lu/?p=1 这样的地址时能自动跳转到自定义的 Permalink,而 WordPress 2.8 以后,根本用不着 Permalink Redirect 插件 ,因为内置的 Rewrite系统 已经能自动301跳转,根本用不着插件的支持,所以,就衍生了这篇文章。

我重点要讲的是如何利用 WordPress 打造一个简易的短网址,为每篇文章都建立一个短网址,而且增加一个 Retweet 链接,下面,就听 Showfom 小帅锅一一道来:

我们知道,默认没有自定义永久链接的时候,WordPress 每个文章的访问地址是类似于 http://zou.lu/?p=81 这样的,而 WordPress 2.8+ Rewrite 机制完美地解决了301跳转问题,所以,利用这一点,我们可以为每个文章都弄一个类似 http://zou.lu/go/81 这样的短网址.

方法如下,Apache 主机的,打开根目录的 .htaccess 文件,输入这两行:

# Redirect posts based on post-id
RewriteEngine On
RewriteRule ^go/([0-9]+)$ ?p=$1 [R=301,L]

通常因为开启了永久链接,所以 RewriteEngine On 本身存在,那么只要把 RewriteRule ^go/([0-9]+)$ ?p=$1 [R=301,L] 加入到 RewriteEngine On 这样下面即可。

这时候,测试一下,是否可以用 http://zou.lu/go/81 这样的网址来访问,测试结果很让人满意。

我们知道,这个81是个postid,那么,如何让他自动在模板中显示呢?用到一个函数即可:

<?php the_ID(); ?>

很神奇吧?

这样,我们在模板的 single.php 里适当位置(一般是<?php the_content(" "); ?>这个函数下方合适)增加一行代码:

<br />

本文短网址:<a href="<?php echo get_option('home'); ?>/go/<?php the_ID(); ?>" title="<?php the_title(); ?>" rel="external nofollow" ><?php echo get_option('home'); ?>/go/<?php the_ID(); ?></a>

(注意标点,要用英文输入法状态下的引号)

当然,有了这个简易的短网址,我们用来干什么呢?废话,当然是发布在Twitter等微博上了,然后,我们就加一条Retweet的链接:

如果你觉得本文很可爱,请使用 Twitter 来 RT 本文:<a  href="https://twitter.com/home?status=RT @Showfom : <?php the_title(); ?> <?php echo get_option('home'); ?>/go/<?php the_ID(); ?>" title="Tweet this post">ReTweet This</a>

自行修改 @Showfom 为自己的 Twitter 账户名,样式可以自己写一个,为了简洁我就不写了,效果参考本文下方的 ReTweet This 字样即可。

===

PS:我知道很多人有洁癖,非得用个.html结尾,那么.htaccess规则就是

RewriteRule ^go/([0-9]+)\.html$ ?p=$1 [R=301,L]

这样就可以通过 http://zou.lu/go/81.html 来访问本站

还有人和我一样有洁癖,非得在链接最后加个斜杠,那么.htaccess规则就是

RewriteRule ^go/([0-9]+)\$ ?p=$1 [R=301,L]

这样就可以通过 http://zou.lu/go/81/ 来访问本页

===

再次PS:Nginx 下的规则分别是:

rewrite ^/go/([0-9]+)$ /?p=$1 permanent;

break;

rewrite ^/go/([0-9]+)\$ /?p=$1 permanent;

break;

rewrite ^/go/([0-9]+)\.html$ /?p=$1 permanent;

break;

再推荐一个在线转换 Apache .htaccess Nginx 伪静态规则的网站:http://www.anilcetin.com/convert-apache-htaccess-to-nginx/

===

再再次PS:因为短网址的原理是301转向,所以害怕搜索引擎的童鞋就别冒险了哈哈。

=======

OK,到了没两天推荐一个博客一个 Twitter 的时间了,本期按照惯例,还是一男一女,嗯,开始推荐咯:

=======

==========下面的东东与本文无关============

今日推荐博客

标题:老K博客,高山仰止,景行行止

博主:Kramon

地址:http://kramon.net/

自我介绍:出身于一个平凡的无产阶级家庭,自由职业,偶游走于各国,直坚信双手可以改变现状。很愤世嫉俗,因为生存的环境委实是一个值得任何一个有理想、有追求、有抱负的青年抱怨的。也许,离开这样一个地方,就不会那么感慨了。生活所迫,喜欢研究外语,另外,我还有一个未婚妻,在法国深造,她是我生活的最主要的动力之一。

入榜理由:老K,一个目前回国瞎转悠的美籍华人,一个有思想的热血青年,一个……总之很厉害的淫,研究外语好多年,雅思托福啥的方面都是砖家,我和老K彻夜长谈,讨论关于人生大业的问题……说过头了,总之,老K是一个值得交往的朋友!

====

今日推荐 Twitter

姓名:@vvchn

地址:https://twitter.com/vvchn

自我介绍:╚囧╗ ╚囧╗本人言论完全来自网络,没有一个字来自本人原创,拒绝跨省追捕,欢迎绿坝拦截╔囧╗╔囧╝

入榜理由:曾经因为小时候留短发被人误以为是男孩,曾经因为上女厕所被阿姨叫住,曾经被某位女生暗恋一年以后才知道自己不是拉拉,曾经……这就是 VV姐,一个在 Twitter 上很神秘的姐姐,关于VV姐的性别,我说过:“不管 VV姐 是男的还是女的,我都叫她 VV姐 ~”,嗯,性别就别讨论了,总之不是 man 就对了,VV姐 经常观察国家时事,偶尔发表自己一针见血的见解,灰常值得Follow

========

要我推荐的朋友麻烦私下联系我,哦O(∩_∩)O哈哈~
本文部分参考: WordPress: Tweet shortened URL of current page to Twitter


.De域名注册

相关信息

已有74条评论

  1. 章鱼 CHINA Mozilla Firefox Windows 发表于2009年07月21日19:47

    沙发 问下 i.showfom.com藏了什么东西 :grin:

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @章鱼, css样式,js、图片,这叫做时尚,日,拒绝多次回复,我把你其他的几个留言删除了

    [回复]

    章鱼 CHINA Mozilla Firefox Windows 回复:

    @Showfom, 应该放在sb.showfom.com 汗死 下面的也删掉撒 :cry: :evil:

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @章鱼, 日 在我博客里灌水又不会给你发奖金的,日。

    [回复]

    LAONB CHINA Mozilla Firefox Windows 回复:

    @Showfom, 因为章鱼是长在深海里的,所以难免带水 :grin: :grin:

    [回复]

  2. Bronco CHINA Mozilla Firefox Windows 发表于2009年07月21日19:52

    章鱼同学很快嘛~~
    话唠同学,叫你刷屏,昨晚嘀咕给你刷挂了吧... :mad:

    [回复]

    章鱼 CHINA Mozilla Firefox Windows 回复:

    @Bronco, 我觉得他太烦了 就把嘀咕关掉了

    [回复]

    Bronco CHINA Mozilla Firefox Windows 回复:

    @章鱼, 哈哈~握爪~~~~ :wink:

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @Bronco, 我看了一下 嘀咕总共才30万条消息……可能看走眼是 300万条 反正我那么一刷怎么可能把它刷挂 日

    [回复]

    Bronco CHINA Mozilla Firefox Windows 回复:

    @Showfom, 可见你的功力是多么滴~~~多么滴~~~

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @Bronco, 多么滴?淫荡?

    [回复]

    Bronco CHINA Mozilla Firefox Windows 回复:

    @Showfom, 好吧,你自己说的,我也没办法... :roll:

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @Bronco, :cool: :lol: 我啥都没说

    [回复]

  3. Leigh CHINA Mozilla Firefox Windows 发表于2009年07月21日19:54

    假装不看上面的评论。。。

    [回复]

  4. 任平生 CHINA Mozilla Firefox Windows 发表于2009年07月21日19:54

    非常棒的方法 :wink:

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @任平生, 原理很简单哦 早就应该想到的 囧…… :oops:

    [回复]

  5. owhimsical UNITED STATES Mozilla Firefox Ubuntu Linux 发表于2009年07月21日19:55

    真复杂。。。。

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @owhimsical, 还复杂?一行代码而已……

    [回复]

  6. Alex CHINA Mozilla Firefox Windows 发表于2009年07月21日20:04

    Google APP也可以搞这样的短网址,我自己搞了一下但几乎都没有怎么用。。。

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @Alex, 这个原理简单,一行代码而已

    [回复]

  7. Kars CHINA Google Chrome Windows 发表于2009年07月21日20:28

    好厉害的说 ~~~

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @Kars, 瞎玩玩的啦 哈哈

    [回复]

  8. KEVIN CHINA Google Chrome Windows 发表于2009年07月21日20:34

    看了有点迷糊了,不过今天我升级到2.8.2了

    [回复]

    章鱼 CHINA Mozilla Firefox Windows 回复:

    @KEVIN, 升级不是好事 看好插件

    [回复]

    KEVIN CHINA Google Chrome Windows 回复:

    @章鱼, 这次只是一次安全方面的升级,没什么大问题!

    [回复]

    章鱼 CHINA Mozilla Firefox Windows 回复:

    @KEVIN, 这次好像还好 2.8-2.81有些兼容就有问题了

    [回复]

    KEVIN CHINA Google Chrome Windows 回复:

    @章鱼, 嗯。可能吧,但是我没出现过什么问题,也许和装的个别插件有关!

    [回复]

  9. 小明猪 CHINA Mozilla Firefox Windows 发表于2009年07月21日20:57

    支持技术性文章~
    PS:还在2.7飘啊飘... :shock:

    [回复]

  10. Black-Xstar CHINA Internet Explorer Windows 发表于2009年07月21日21:06

    哇,你会写php了啊。

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @Black-Xstar, 囧 .htaccess 规则呀……那几个是WordPress主题里的函数 囧

    [回复]

  11. 枫子 CHINA Internet Explorer Windows 发表于2009年07月21日21:50

    这个目前只能在linux活着Unix下使用..WIN主机无法实现... :???:

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @枫子, 在 Win 主机下用 WordPress 绝对是在……自杀

    [回复]

  12. 小猪vs蛋挞 CHINA Safari Mac OS 发表于2009年07月21日22:56

    彻底的文科男被这些搞晕了.....我有问题都得抓公司的程序员来请教要么就自己瞎折腾.........郁闷的很...

    [回复]

  13. LAONB CHINA Mozilla Firefox Windows 发表于2009年07月21日22:59

    2.7的时候就会,动态地址会按规律转到静态地址。

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @LAONB, 我2.8才发现的……囧

    [回复]

  14. 老时 CHINA Mozilla Firefox Windows 发表于2009年07月21日23:24

    博客推荐博客,不错。

    [回复]

  15. 博译论 CHINA Mozilla Firefox Windows 发表于2009年07月21日23:43

    还不如问号ID那个啥,短而动

    还是喜欢postname.html多点。

    [回复]

  16. Bronco CHINA Mozilla Firefox Windows 发表于2009年07月21日23:55

    呃~刚把文章看完,两个问题:
    第一个,短址的超链接的rel,你写的是external nofollow,表示这是外部链接不要读取?或者表示打开一个新窗口?貌似都不合适吧~
    第二个,你居然把"Showfom 小xx"加粗...... :arrow:

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @Bronco, no follow 防止搜索引擎收录……加粗那是正常的,小妹妹都说峰哥哥的两个蛋蛋最可爱了~~ :oops:

    [回复]

  17. kramon CHINA Internet Explorer Windows 发表于2009年07月22日06:21

    来晚了...

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @kramon, 我都推荐你的博客鸟……

    [回复]

    kramon CHINA Mozilla Firefox Windows 回复:

    @Showfom, 冗长的文章让我忽略了那么精彩的部分,哈哈...

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @kramon, 日。。话说你怎么QQ上一直隐身还是不在的?

    [回复]

    kramon CHINA Mozilla Firefox Windows 回复:

    @Showfom, 最近忙啊,上个QQ都分身乏术...

    [回复]

  18. Rockoy CHINA Mozilla Firefox Windows 发表于2009年07月22日08:06

    我用lighttpd,没使用apache,怎么弄URL Rewrite?

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @Rockoy, lighttpd我都没用过捏。。你自己搜索一下吧,哪里的空间呀?居然用lighttpd……

    [回复]

    Rockoy CHINA Mozilla Firefox Windows 回复:

    @Showfom, VPS,我感觉lighttpd不错,挺快的 :grin:

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @Rockoy, 囧 VPS 用 Nginx 呀,同时在线多的时候就知道谁快谁慢了……

    [回复]

  19. 小峰JoysBoy CHINA Google Chrome Windows 发表于2009年07月22日08:36

    好复杂的东西,暂时没时间深究了,先来签到,呵呵 :oops:

    [回复]

  20. leehow CHINA Mozilla Firefox Windows 发表于2009年07月22日08:44

    今天看不见日食。

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @leehow, 听说上海能看到,,,但是我睡过头了。

    [回复]

  21. 西风 CHINA Mozilla Firefox Windows 发表于2009年07月22日11:59

    这篇文章值得参考 :grin: :grin: :grin: :grin:

    [回复]

  22. junjun CHINA Mozilla Firefox Windows 发表于2009年07月22日14:18

    很神奇,搞不懂

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @junjun, 这个。。。让技术人员为姐姐搞定就OK鸟 :oops:

    [回复]

  23. beatlesred CHINA Internet Explorer Windows 发表于2009年07月22日15:54

    :cry: 嘀咕怎么啦

    [回复]

    beatlesred CHINA Internet Explorer Windows 回复:

    @beatlesred, :!: 我的头像怎么啦

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @beatlesred, 头像可以看哦 嘀咕 嘀咕 回来吧……嘀咕你老妈叫你回家吃饭鸟 :shock:

    [回复]

    beatlesred CHINA Internet Explorer Windows 回复:

    @Showfom, :sad: 我觉得嘀咕是被和谐了,李松大哥在交涉ING...

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @beatlesred, 我的话唠生涯……别这样就断送了,多可惜……

    [回复]

  24. zEUS. CHINA Mozilla Firefox Windows 发表于2009年07月23日09:08

    我还是喜欢永久链接里包换关键词 :smile:

    [回复]

  25. 要饭的 CHINA Google Chrome Windows 发表于2009年07月23日10:14

    学习一下~~

    [回复]

  26. VPS侦探 CHINA Internet Explorer Windows 发表于2009年07月23日10:46

    简短地址也没感觉多么好记。。。

    [回复]

    Showfom CHINA Mozilla Firefox Windows 回复:

    @VPS侦探, 只要记住域名即可的 哈哈

    [回复]

  27. leecay CHINA Internet Explorer Windows 发表于2009年07月23日20:50

    那个推荐很个性~

    [回复]

  28. key4ever CHINA Opera Windows 发表于2009年07月23日23:29

    卧槽!!好文能不留言吗~?

    [回复]

  29. bolo CHINA Internet Explorer Windows 发表于2009年07月24日12:48

    分析得很深入,不过一般就用自带的静态化功能也行了

    [回复]

  30. Joya CHINA Mozilla Firefox Windows 发表于2009年07月24日13:44

    周末再升级,现在我对升级很有戒心。

    [回复]

  31. 斯比瑞特 CHINA Google Chrome Windows 发表于2009年07月25日17:20

    太高难了,看不懂!发布在Twitter等微博上??是为什么?呵呵!
    你的头像框msn风格挺好玩!

    [回复]

  32. shamas CHINA Internet Explorer Windows 发表于2009年07月26日09:45

    高手啊,学习学习

    [回复]

  33. shun CHINA Opera Windows 发表于2009年07月26日23:07

    。。。
    看着又一阵头晕 :shock:

    [回复]

  34. 蓝冰 CHINA Internet Explorer Windows 发表于2009年07月30日08:30

    这东西……

    [回复]

欢迎写下您的评论,其中 * 为必填项目

这里写下你想说的话

:wink: :-| :-x :twisted: :) 8-O :( :roll: :-P :oops: :-o :mrgreen: :lol: :idea: :-D :evil: :cry: 8) :arrow: :-? :?: :!:


Follow us on Twitter