将urlvariables传递给一个wordpress页面,并用.htaccess进行匹配

我把wordpress安装在一个名为welcome的目录中, / welcome / samples是一个“页面”(通过Wordpress创build)。 它有一个PHP模板等待$ _REQUEST ['category']

当用户去/欢迎/样品/ 乐趣 ,我想有一个“乐趣”传递到样本的PHP模板的formswelcome / samples / ?category = fun

但是我希望这个URL保持原来的forms – 目前它正在用丑陋的“猫…等”取而代之。

# Outside the wordpress block so it won't be overwritten Options +FollowSymlinks RewriteEngine On RewriteRule ^samples/([^/]+)$ /welcome/samples?cat=$1 [R,L] # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /welcome/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /welcome/index.php [L] </IfModule> # END WordPress 

我尝试用简单的samples?cat=$1重写samples?cat=$1但是我得到了404。我尝试在第一个块中放入RewriteBase /welcome/ 。 没有[R]国旗它根本不工作。 我不断尝试不同的排列…和失败:(

也许我错过了一些基本的概念…谢谢,如果你花时间来读通过这:)

再见

这似乎适用于我:

 RewriteRule ^welcome/samples/([^/]+)$ /welcome/samples?cat=$1 

我注意到你在^samples…上匹配^samples…但实际上还没有RewriteBase ,所以你需要匹配更多( ^welcome/samples…