我正在创建一些项目,由于任务,我需要:
领域com/user/user123-返回“user123”的个人信息档案
领域com/我的配置文件-返回当前登录用户的配置文件
我试过了add_query_args 或一些教程(likehttp://www.rlmseo.com/blog/passing-get-query-string-parameters-in-wordpress-url/),但这对我不起作用。
也许htaccess方式有一个选项,但这一部分让我很困惑(我的意思是当我使用WordPress方式时)。有什么想法吗?
谢谢
最合适的回答,由SO网友:pouria 整理而成
如果我很了解你,你可以add_rewrite_rule();
函数将url映射到特定查询变量。https://codex.wordpress.org/Rewrite_API/add_rewrite_rule
function myfunc_rewrite_rules() {
add_rewrite_rule(\'user/?([^/]*)\', \'index.php?pagename=user&username=$matches[1]\', \'top\');
}
function myfunc_username_query_vars($vars) {
$vars[] = \'username\';
return $vars;
}
add_action(\'init\', \'myfunc_rewrite_rules\');
//add query vars (username) to wordpress
add_filter(\'query_vars\', \'myfunc_username_query_vars\');
function myfunc_display() {
$userpage = get_query_var(\'pagename\');
$username = get_query_var(\'username\');
if (\'user\' == $userpage && \'\' == $username ):
//show all users
exit;
elseif (\'user\' == $userpage && \'\' != $username ):
//show specific user
exit;
endif;
}
//register plugin custom pages display
add_filter(\'template_redirect\', \'myfunc_display\');
本教程可以帮助:
http://clivern.com/how-to-add-custom-rewrite-rules-in-wordpress/UPDATE:
运行此代码后,必须转到
Settings->Permalinks
只需点击保存按钮即可刷新所有重写规则。(这是许多permalink问题的解决方案)