WordPress永久链接系统如何工作?

时间:2012-07-03 15:34:15

标签: wordpress url content-management-system blogs permalinks

我是一名php开发人员,目前正在开发CMS /博客系统。我想添加像WordPress这样的固定链接系统。我很好奇WordPress如何解析永久链接。例如,如何从{<1}}和id获取数据:

post name

简而言之,我希望系统从网址获取example.com/id/123/post/example/ id。我想让用户使用以下标签更改像WordPress这样的永久链接结构:

post name

如何获取id/%postid%/post/%postname%/ $id等变量中的数据,其中值为$post_name123?请帮我。 提前谢谢。

2 个答案:

答案 0 :(得分:6)

常用的apache模块 mod_rewrite 可以帮助您解决这个问题。你所做的是在.htaccess文件中写入重写规则,通过重写,通常类似于文件系统的花哨结构将作为$ _GET参数发送到PHP文件。

例如,如果您想将?reactor=13替换为/reactor/13/

将此重写规则写入.htaccess文件:

RewriteEngine on
RewriteRule reactor/([0-9]+)/$ index.php?id=$1

现在,如果不是index.php而是拉起/ reactor / 13 /,你的index.php文件应该在$ _GET中看到:

Array
(
    [id] => 13
)

现在,对于您的HTML代码,您可以自行制作网址并遵循您的思维结构。

这些重写规则可能令人困惑,但它们遵循逻辑正则表达式模式。

WordPress比将这些编辑.htaccess文件插入到将所有内容发送到WP的位置采用更强大的方法,然后WP通过内部规则解决/路由其余内容。

答案 1 :(得分:0)

这取决于您使用的服务器软件,但如果您计划在Apache上使用脚本,通常需要使用名为mod_rewrite的内容,特别是.htaccess文件。

我建议首先阅读有关此主题的教程。 As usual, Google is your friend