add_rewrite_rule to search

时间:2013-12-11 作者:Pedro Luz

新手WordPress开发者。

我需要像这样映射WordPress URLwww.example.com/user/Username 基于该用户名的搜索结果

我已经有了使用url进行搜索的页面www.example.com/search-results/?name=Username

functions.php 我有

add_action( \'init\', \'add_username_rules\' );
function add_username_rules()
{
    global $wp_rewrite;

    add_rewrite_rule(
    "user/([^/]*)",
    "search-result/?name=$matches[0]",
    "top"
    );

    $wp_rewrite->flush_rules();
}
但这是行不通的规则non_wp_rules.

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

这将是非wp规则,因为您没有将URL映射到索引。php页面格式。

如果希望它成为WP规则,则需要以索引开始目标。php并包含查询字符串,以定义您希望查询包含的内容。

因此,如果您希望它转到特定页面,例如,您可以将其设置为:

index.php?page=123&name=$matches[0]

WordPress重写规则仅将“漂亮”url格式映射为“默认”url格式。它们不是htaccess重写系统的完整实现。

结束

相关推荐