WP如何确定帖子和页面URL之间的区别

时间:2014-10-04 作者:edmcmanwich

我试图在javascript插件中模拟WP路由。我已成功导入重写规则,并将其应用到浏览器位置。但我似乎无法解析使用永久链接时页面和帖子之间的区别。

根据我所读的内容,WP将请求的URL与正则表达式进行匹配,然后使用它创建一个查询,其中包含从URL提取的参数。我认为以下是相关的重写规则:

页码:

(.?.+?)(/[0-9]+)?/?$: "index.php?pagename=$matches[1]&page=$matches[2]" 
职位:

([^/]+)(/[0-9]+)?/?$: "index.php?name=$matches[1]&page=$matches[2]"
我想我想知道这之后会发生什么。一个URL可以匹配这两种模式。WP是否保存这两个匹配项、运行查询并返回结果?还是在第一次重写匹配后,它会停止循环规则?如果是这样的话,它如何知道它是在寻找帖子还是页面?

1 个回复
最合适的回答,由SO网友:Mark Kaplun 整理而成

URL解析中有一个优先级,与页面相关的解析是最低优先级,或者您可能会说,页面是在其他解析都不起作用时应用的默认解析。在您的示例中,wordpress将首先尝试将URL视为帖子,如果找不到匹配的帖子,它将尝试查找与URL匹配的页面。

结束

相关推荐

将所有wp_Options发送到javascript文件会有危险吗?

我注意到wordpress允许我通过wp\\u localize\\u脚本将wordpress选项发送到javascript:wp_localize_script( $this->plugin_slug . \'-plugin-script\', \'wp_options\', wp_load_alloptions() ); 这样,我的javascript就可以访问不同的设置,例如一周从哪一天开始,以及用户选择的日期格式。是否存在任何风险,将所有选项作为变量发送给js,或者这样可以吗?我注