如何使is_rtl()返回true

时间:2018-05-22 09:02:58

标签: wordpress right-to-left

我通过GET变量将wordpress语言环境从一种语言切换到另一种语言,并根据GET的值,正确加载了相应的字体和css等。但是,主要的style.css仍然与特定语言css的加载相同。

除了一些RTL语言。对于他们来说,我的主要style.css也需要从style.css切换到style-rtl.css。

我的代码如下:

if( !is_rtl() ) { // if LTR
    wp_enqueue_style('direction-style', get_template_directory_uri()."/style.css",array(), null);
} else { // if RTL
    wp_enqueue_style('direction-style', get_template_directory_uri()."/style-rtl.css",array(), null);
}

现在我需要一个命令让is_rtl()返回true。我在互联网上搜索但找不到它。我非常感谢你的帮助。

1 个答案:

答案 0 :(得分:0)

我解决了。

实际上问题是由Wordpress主题的function.php文件中运行上面的代码引起的。

需要从插件中调用locale hook而不是从主题调用,因为当WordPress加载主题时,已经太晚了。

从插件调用后,is_rtl()会自动为默认为RTL的语言环境返回true。

作为额外的好处,还可以将以下属性添加到body标签

dir="<?php echo $GLOBALS['text_direction']; ?>"