让getText与条件语句一起使用时出现问题

时间:2014-05-27 作者:OldGreg

我一直想申请gettext 筛选以针对不同的产品类别返回两个不同的结果(或读取为帖子的类别,非woocommerce特定)。

我似乎做不好。这将加载但实际上不应用条件,它始终默认为else条件。我错过了什么?这将添加到my child主题的函数中。php。

function my_text_strings( $translated_text, $text, $domain ) {
            switch ( $translated_text ) {
                        case \'Related Products\' :
                                    if  (is_product_category( \'providers\' ) ) {
                                        $translated_text = __( \'Check out these other Providers\', \'woocommerce\' );
                                        } else {
                                        $translated_text = __( \'Check out reviews of other Providers\', \'woocommerce\' );
                                        }
                                        break;
                                        }
            return $translated_text;
}
add_filter( \'gettext\', \'my_text_strings\', 20, 3 );

1 个回复
SO网友:raison

我在以下方面取得了成功,我专门设置了$域。在您的实例中,您可能希望将$domain更改为$woocommerce。查看原始的related\\u products函数,并查看它是如何使用本地化函数输出的,以确定要使用的域。

希望有帮助

    function wpa_translate_email( $translated_text, $text, $domain ){
        if( $domain == \'woothemes\' && $translated_text == \'E-mail\' && is_front_page() )
            $translated_text = \'Enter your email for news, recipes and offers\';

        return $translated_text;
    }

    add_filter( \'gettext\', \'wpa_translate_email\', 10, 3 );

结束

相关推荐