Search code examples
phpwordpresstemplateswoocommercegettext

Rename Related Products title in Woocommerce 3


I used to have the following function working to change to Related Products text in Woocommerce.

function my_text_strings( $translated_text, $text, $domain ) {
    switch ( $translated_text ) {
        case 'Related Products' :
            $translated_text = __( 'Related Books', 'woocommerce' );
            break;
    }
    return $translated_text;
}
add_filter( 'gettext', 'my_text_strings', 20, 3 );

It always worked perfectly, but as of Woocommerce version 3.0 or so, this function no longer works.

How should I fix this in order to make it working in the version 3.0 and up?


Solution

  • Try this, it's working with me

    add_filter(  'gettext',  'wps_translate_words_array'  );
    add_filter(  'ngettext',  'wps_translate_words_array'  );
    function wps_translate_words_array( $translated ) {
         $words = array(
                    // 'word to translate' = > 'translation'
                   'Related Products' => 'Check out these related products',  
         );
         $translated = str_ireplace(  array_keys($words),  $words,  $translated );
         return $translated;
    }