在wordpress中创建url shortner

时间:2010-07-10 17:19:54

标签: php wordpress wordpress-plugin

我正在尝试在我的wordpress中制作短网址或甚至漂亮的网址。假设,我有一个the_content过滤器,可以找到帖子内容中的所有外部链接,它需要返回相对于我的站点URL的简短或漂亮的URL。

外部网址:

  

stackoverflow.com/questions/ask

漂亮的网址:

  

myblog.com/xyxd

制作网址不是什么大问题!但我不明白当他/她访问这个漂亮的网址时,我如何将访问者重定向到原始的外部网站?

假设,只需点击一下或输入:

  

myblog.com/xyxd

现在,我需要将他(301/302)重定向到:

  

stackoverflow.com/questions/ask

我该怎样处理这个问题(也没有与wordpress的本地帖子/页面网址冲突)。

任何帮助?

即使你读过这个问题,也要提前感谢:)。

注意:我必须从所有链接中删除http://,因为stackoverflow不允许我放置多个链接!

2 个答案:

答案 0 :(得分:0)

查看WordPress pretty link

更新:

您可以使用正则表达式或HTML解析器挂钩wp_insert_post并扫描内容以寻找网址。

然后使用Pretty Link API为每个网址插入漂亮的链接。

答案 1 :(得分:0)

您默认已有一个

http://yourweb.local/blog/?p=2365

您可以使用帖子ID作为缩短,例如固定链接结构的默认设置 http://codex.wordpress.org/Using_Permalinks

所以内循环你可以使用:

<a href="<?php bloginfo('url');?>?p=<?php the_ID(); ?>" title="<?php the_title(); ?>"><?php bloginfo('url');?>?p=<?php the_ID(); ?></a>

(编辑:甚至更好)但不要使用:因为将WP brog移动到另一个博客,将留下旧博客的地址

<a href="<?php the_guid(); ?>" title="<?php the_title(); ?>"><?php the_guid(); ?></a>