我在 www.site.com/blog / 上安装了我的wordpress,但我想在博客目录前添加语言代码( www.site.com/us/博客, www.site.com/es/blog / 等等)。有没有办法实现这一目标?我需要将这些虚拟目录保存在URI中,以便在访问 www.site.com/us/blog 时,我想在 www.site.com/us/blog 中显示地址栏。
这是来自www.site.com/blog/目录的.htaccess文件。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
</IfModule>
# END WordPress
答案 0 :(得分:0)
RewriteEngine On
RewriteRule ^(.*)/blog/$ blog/?language=$1
自从我写完.htaccess以来已经有一段时间了,请告诉我这是怎么回事。
编辑:这是一个有用的教程如何工作:) https://www.addedbytes.com/articles/for-beginners/url-rewriting-for-beginners/
答案 1 :(得分:0)
这应该适合你:
RewriteEngine on
RewriteRule ^[a-z]{2}/(.*)$ /$1 [QSA,L]
它检查URL开头的任何2个字母前缀,后跟其他任何内容,然后将其视为对该位的请求,因此/us/blog
将被视为对{{1}的请求},就像/blog
被视为/es/page/123
的请求一样。只要访问者访问带前缀的URL,就不会重定向该地址。
如果您想更具体地说明要使用哪种语言前缀,请改为:
/page/123
确保在第一组parantheses之间添加你想要的那些(并用管道(RewriteEngine on
RewriteRule ^(es|fr|us)/(.*)$ /$2 [QSA,L]
分隔),如上所示。