创建主页链接的通常做法是在主题(通常在 header.php)中插入该链接:
<a href="<?php echo get_option('home'); ?>/" >
它会生成一个指向您网站主页地址的链接。 由于该地址存储在WordPress中时没有尾部斜线“/”,因此这段代码也会添加尾部斜线。 如果没有它,WordPress就会在内部重定向,导致每次点击主页都要重复访问。
使用WPML 时,主页地址会根据语言进行修改。 有些地址已包含尾部斜线“/”,有些则不包含。 如果保留正常的主页链接,一些主页就会出现双拖尾“/”符号。 例如,您的西班牙语主页可以这样显示:
example.com/es//
为避免出现这种情况,我们建议使用WPML 3.2版本推出的新过滤器、
wpml_home_url
. 它将指向正确的家庭地址,并自动使用正确的斜线。 例如,您可以使用类似下面的功能:
<?php $my_home_url = apply_filters( 'wpml_home_url', get_option( 'home' ) ); ?> <a href="<?php echo $my_home_url; ?>">Home</a>
您仍然可以使用我们传统的icl_get_home_url钩子,但自 3.2 版本起,该钩子已被弃用,建议您使用wpml_home_url代替。
下面是icl_get_home_url钩子用法的示例:
<a href="<?php echo icl_get_home_url() ?>" >
使用WordPress本地钩子获取主页 URL
随着WordPress的发展,我们还增加了对其本地钩子的支持,这使得使用更加方便。 例如,WordPress原生钩子如
get_home_url()
或
home_url()
等 WordPress 原生钩子默认会按语言过滤 URL。 这意味着您可以直接使用它们,就像这样:
<?php echo esc_url( home_url( '/' ) ); ?>Home</a>
请记住,WordPress的其他钩子,如
site_url()
,
get_option(‘home’)
和
get_option(‘siteurl’)
不会 被自动过滤。 如果您决定使用这些钩子,请使用我们的wpml_home_url 过滤器来翻译网站的主页地址。