我想更改我的wordpress的url,我已经读到我可以用重写规则来实现,但不幸的是,它对我不起作用。以下是详细信息:
我有一个wordpress主题,它给了我这样的URL:
www.my-theme.pl/portfolio_category/red-flower/
www.my-theme.pl/portfolio_category/blue-flower/
www.my-theme.pl/portfolio_category/black-trees/
www.my-theme.pl/portfolio_category/white-roses/
我想通过.htaccess重写URL以接收:www.my-theme.pl/gardens/red-flower/
正如你所看到的,我只想用/agardens/text替换URL中的/portfolio_category/,因为之后是不同的帖子名称,但/portfolio _categori/始终保持不变。
我输入了这个规则:
RewriteRule ^/portfolio_category/$ /gardens/$ [NC]
不幸的是,它不起作用。你能说明如何正确使用吗?以下是我的全部.htaccess代码:
Options -Indexes
AuthType Basic
AuthName "password"
AuthUserFile /home/*******************/.htpasswd
Require valid-user
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^/portfolio_category/$ /gardens/$ [NC]
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
*******已替换为我的htpasswd的工作路径。这是我第一次做任何重写更改,我对此并不熟悉。我认为我已经正确阅读了教程,但更改仍然不起作用。
波兰致以最良好的祝愿,Jacek
如果我正确理解您想要什么,那么您的重写规则将被颠倒,并且您不包括以下目录。尝试:
RewriteRule ^/gardens/(.*)$ /portfolio_category/$1 [NC]
这会将/agardens/更改为/portfolio_category/。(.*)$将所有内容收集到URL的末尾,然后$1将其添加到新URL的末尾。
谢谢你,bodie先生,我认为我的问题已经解决了,我只需要将更改代码编码到我的主题中,通过主题引擎获得不同的URL,这样URL从一开始就正确无需重写。