我正在使用WPML Wordpress插件翻译我的网站。我的默认语言是法语。当我在翻译页面时,home_url()
将使用当前语言重写。如何禁用此重写,以便我的home_url()
始终重定向到法语主页?
翻译页面网址:http://www.mydomain.com/en/test/
实际home_url()
:http://www.mydomain.com/en/
所需home_url()
:http://www.mydomain.com/
我已经尝试过这些解决方案:
http://wpml.org/forums/topic/wpml-overwrites-home_url-to-append-language-suffix/ http://wpml.org/documentation/support/creating-multilingual-wordpress-themes/home-page-link/ http://wpml.org/forums/topic/wpml-changed-my-default-home-url/
抱歉我的英文不好,谢谢你的帮助! 如果我需要提供任何其他信息,请告诉我。
答案 0 :(得分:1)
我猜你可以覆盖WPML所做的事情并覆盖home_url(),就像使用hook / filter“home_url”一样,并使用$ _SERVER ['SERVER_NAME']获取没有lang的url;或其他一些方式。
也许这样的事情可行:
add_filter( 'home_url', 'fix_home_url_lang', 100, 4 );
function fix_home_url_lang( $url, $path, $orig_scheme, $blog_id ) {
return 'http://' . DOMAIN_CURRENT_SITE . PATH_CURRENT_SITE . $path;
}
这不考虑您可能拥有的任何多站点,因此请小心。此外,也许你应该使用传递给函数的参数来找出你想要的url。
答案 1 :(得分:1)
感谢您的回答!
我稍稍调整了你的功能。这是我的最终功能:
add_filter('home_url', 'fix_home_url_lang', 100, 4);
function fix_home_url_lang($url, $path, $orig_scheme, $blog_id) {
return 'http://' . DOMAIN_CURRENT_SITE . PATH_CURRENT_SITE . $path;
}