add_rewrite_endpoint

函数
add_rewrite_endpoint ( $name, $places, $query_var = true )
参数
  • (string) $name Name of the endpoint.
    Required:
  • (int) $places Endpoint mask describing the places the endpoint should be added. Accepts a mask of: - `EP_ALL` - `EP_NONE` - `EP_ALL_ARCHIVES` - `EP_ATTACHMENT` - `EP_AUTHORS` - `EP_CATEGORIES` - `EP_COMMENTS` - `EP_DATE` - `EP_DAY` - `EP_MONTH` - `EP_PAGES` - `EP_PERMALINK` - `EP_ROOT` - `EP_SEARCH` - `EP_TAGS` - `EP_YEAR`
    Required:
  • (string|bool) $query_var Name of the corresponding query variable. Pass `false` to skip registering a query_var for this endpoint. Defaults to the value of `$name`.
    Required:
    Default: true
定义位置
相关方法
add_rewrite_tagadd_rewrite_ruleiis7_add_rewrite_ruleadd_site_metawp_write_post
引入
2.1.0
弃用
-

add_rewrite_endpoint: 这个函数是用来给WordPress重写规则添加一个新的端点(自定义URL)。端点允许你在现有的URL末端添加额外的URL参数。你可以用这个函数在WordPress重写规则中添加一个新的查询变量和端点。

添加一个端点,如/trackback/。

添加一个端点会为所提供的比特掩码指定的每个匹配位置创建额外的重写规则。例如。

add_rewrite_endpoint( ‘json’, EP_PERMALINK | EP_PAGES ) 。

将为每个描述固定链接(post)或页面的permastruct添加一个以”json(/(.*))?/?$”结尾的新重写规则。这将被改写为”json=$match”,其中$match是由端点重码匹配的URL部分(例如,”[permalink]/json/foo/”中的”foo”)。

一个与端点同名的新查询变量也将被创建。

当指定$places时,确保你使用EP_*常量(或使用位数OR操作符的组合),因为它们的值不能保证保持静态(特别是`EP_ALL`)。

请确保在你的插件被激活和停用时刷新重写规则–见flush_rewrite_rules()。

function add_rewrite_endpoint( $name, $places, $query_var = true ) {
	global $wp_rewrite;
	$wp_rewrite->add_endpoint( $name, $places, $query_var );
}

常见问题

FAQs
查看更多 >