【发布时间】:2016-12-28 00:49:47
【问题描述】:
由于我们的主题存在错误,我们正在努力完成这些任务
1.) 当用户现在点击登录时,他将访问 www.mysite.lu/en/wp-login.php 或 www.mysite.lu/fr/wp-login.php(WPML 多语言)。对于所有这些类型的 URL,其显示 404 页面。所以我们认为我们可以使用 .htaccess 重定向方法从 URL 中删除语言。 所以我们使用以下代码
Redirect /en/wp-login.php /wp-login.php?redirect_to=http://mysite.lu/en/my-account
Redirect /fr/wp-login.php /wp-login.php?redirect_to=http://mysite.lu/fr/my-account/
Redirect /de/wp-login.php /wp-login.php?redirect_to=http://mysite.lu/de/my-account
使用上面的代码,我们的登录 URL 工作正常。
2.) 但是我们的注册网址是
http://mysite.lu/en/wp-login.php?action=register
所以当我们点击注册链接时,它也会重定向到
http://mysite.lu/de/my-account
这是不正确的。我们不想重定向注册 URL。
为此我们也尝试了下面的代码
RewriteCond %{QUERY_STRING} !(^|&)action=register($|&) [NC]
RewriteRule /en/wp-login\.php$ /wp-login.php?redirect_to=http://mysite.lu/en/my-account [L,R=301]
但这也行不通。 请告诉我们做错了什么。
【问题讨论】:
标签: php wordpress apache .htaccess redirect