如何在不创建子端点的情况下创建端点?

时间:2017-05-22 作者:henrywright

我正在尝试使用add_rewrite_endpoint(). 这是我的代码:

// Add query var.
add_filter( \'query_vars\', function( $vars ) {
    $vars[] = \'my-endpoint\';
    return $vars;
} );

// Add endpoint.
add_action( \'init\', function() {
    add_rewrite_endpoint( \'my-endpoint\', EP_AUTHORS );
} );
我现在可以访问示例。com/author/my端点很好,但“子”端点似乎也能工作。例如:

示例。com/author/my endpoint/random示例。com/author/my endpoint/any here如何创建我的端点without 还要创建这些“子”端点吗?

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

添加的重写规则:

add_rewrite_endpoint( \'my-endpoint\', EP_AUTHORS );
是的

author/([^/]+)/my-endpoint(/(.*))?/?$

=>

index.php?author_name=$matches[1]&my-endpoint=$matches[3]
因此,它假设了之后的任何事情,例如:。/author/henrywright/my-endpoint/....

您可以尝试将其替换为add_rewrite_rule() e、 g。

add_rewrite_rule( 
    \'^author/([^/]+)/my-endpoint/?$\', 
    \'index.php?author_name=$matches[1]&my-endpoint=1\', 
    \'top\'
);

结束

相关推荐

Dynamic Endpoints

我在WordPress外部有一个数据库表,需要为其创建端点。我已经创建了一个页面/cars/ 我计划使用页面模板生成链接。我希望url看起来像/cars/camaro/ ()/cars/%model%/ ). 起初,我认为我可以使用端点,但不知道如何根据从模型表中提取的段塞使它们动态。我也不确定使用Permalink结构标签是更容易还是更好。我甚至不完全确定从哪里开始,我以前创建过“静态”端点,所以我有一个基础可以跳出,但当我到达request 我不知道该怎么办。/** * Add endpoi