问题描述

我看到我可以编辑 wp-admin 页面中的固定链接信息> 设置> 固定链接。但是,数据库中实际存储的信息在哪里?

最佳解决方案

wp_options 表中有一个记录,其中 option_name = "permalink_structure"

但是,真正的最终控制 url 重写是由 WP_Rewrite API 控制的,它将其信息保存在 rewrite_rules wordpress 选项中 (也可以在 wp_options 表中找到) 。

编辑:

此外,编辑页面/帖子时,您可以更改该页面/帖子的”permalink”(右下角更改标题) 。所做的只是在 wp_posts 表中为该页面’s/post’s 条目设置 post_name 字段 (也称为更改该页面的”slug”) 。

对于所有页面,似乎默认的重写规则如下:

[(.?.+?)/page/?([0-9]{1,})/?$] => index.php?pagename=$matches[1]&paged=$matches[2]
[(.?.+?)/comment-page-([0-9]{1,})/?$] => index.php?pagename=$matches[1]&cpage=$matches[2]
[(.?.+?)(/[0-9]+)?/?$] => index.php?pagename=$matches[1]&page=$matches[2]

该列表由我运行这个 php 代码获得:echo nl2br('rules = '.print_r( $wp_rewrite->rules, true) . "n");

似乎没有任何内置的方式来编辑页面的路由,因为固定链接结构仅适用于帖子。

编辑:

我发现更多的随机信息:如果你的 permalink_structure 是一个空字符串 (这是”default” 选项,你可以选择),然后 wordpress 完全跳过所有重写 – 我真的不知道为什么会这样,但它是。

参考文献

注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。