我目前正在开展一个项目,我需要这个项目来操纵参数以达到美学目的。
add_rewrite_rule( '([^/]*)/user/([^/]+)','index.php?pagename=$matches[1]&username=$matches[2]', 'top' );
-> would correctly retrieve the userID (in this case 232) from the following URL: http://mysite.com/userlisting/user/232
add_rewrite_rule( '([^/]*)/([^/]*)/user/([^/]+)','index.php?pagename=$matches[1]&username=$matches[2]', 'top' );
-> would correctly retrieve the userID (in this case 232) from the following URL: http://mysite.com/parent_directory/userlisting/user/232
现在我可以添加,让我们说这些规则中的10个,以确保我至少完成了10个级别的层次结构,但我想要做的是使它有点动态,基于当前“用户列表”的级别“有。。
非常感谢任何帮助。
答案 0 :(得分:0)
add_rewrite_rule( '([^/]*)/([^/]*)/user/([^/]+)','index.php?pagename=$matches[1]&username=$matches[2]', 'top' );
-> would correctly retrieve the userID (in this case 232) from the following URL: http://mysite.com/parent_directory/userlisting/user/232
否,它不会。
parent_directory
userlisting
232
(即userID)所以你的内部网址是index.php?pagename = parent_directory& username = userlisting
至于actully,解决问题,取决于你想如何处理多个级别,即如何将它们传递给php,一个可能性就是
add_rewrite_rule( '(.+?)/user/([^/]+)','index.php?pagename=$matches[1]&username=$matches[2]', 'top' );
在这种情况下会给出
的index.php页面名= parent_directory / userlisting&安培;用户名= 232
即,与url中存在的目录一样多的目录将使其成为“页面名称” - 您不会排除/作为目录名称的一部分。
但是,如果您希望将不同的层次结构级别不同地呈现给PHP,则可以进行不同的操作。