我想要一个重写规则,以便能够将GET变量更改为更好的URL。
例如:
example.com?category=news to: example.com/category/news
我还希望保留其他GET变量。
示例:
example.com?category=news&sort=asc to: example.com/category/news&sort=asc
修改需要在wordpress htaccess文件中进行:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
我不想重定向,我只想要更改网址。
更新1
我试过Jon Lin的例子。它有用,但我想先添加一个/ en,我也希望这个类别变得可变。
我尝试了Mod Rewrite Generator,我得到了这个结果,但它不起作用。
RewriteEngine On
RewriteRule ^category/([^/]*)$ /en/?category=$1 [L]
接下来我尝试将两者结合起来,但我不知道问题是什么。
RewriteEngine On
RewriteCond %{THE_REQUEST} \ /(index\.php)?\?/en/category=$1&?([^\ ]*)
RewriteRule ^ /en/category/%1?%2 [L,R]
RewriteRule ^category/([^/]*)$ /en/?category=$1 [L,QSA]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
答案 0 :(得分:0)
尝试在之前添加这些规则::
RewriteEngine On
RewriteCond %{THE_REQUEST} \ /(index\.php)?\?category=news&?([^\ ]*)
RewriteRule ^ /category/news?%2 [L,R]
RewriteRule ^category/news$ /?category=news [L,QSA]