Cómo cambiar cualquier texto en WooCommerce o WordPress

Cambiar cualquier texto en WordPress o WooCommerce - MARIO GOMEZ LUELMO
¿Alguna vez has necesitado forzar el cambio de algún texto en tu WordPress o Commerce y no lo consigues con Loco Translator? ¡Hazlo por código!

Índice de contenidos

La verdad es que tiene bastante mérito que podamos tener la traducción al español de WooCommerce pero seguro que en determinadas ocasiones preferiríamos que en nuestra tienda online se mostrase algún texto en vez de otro, ya sea por cuestiones personales o comerciales.

Me refiero a textos como por ejemplo: «Añadir al carrito«, «Ir a la tienda«, «Oferta» o cualquier texto por defecto que se pueda colar por algún sitio, como un «Read More».

Pues bien. Es muy fácil. Solo tienes que adaptar el siguiente código a tus necesidades e incluirlo en tu plugin de personalizaciones (o en el archivo functions.php de tu tema child activo). Solo tienes que personalizarlo a tu gusto, con las palabras que quieras sustituir:

add_filter('gettext',  'translate_text');
add_filter('ngettext',  'translate_text');
 
function translate_text($translated) {
     $translated = str_ireplace('TEXTO QUE NO QUIERO',  'TEXTO QUE SÍ QUIERO',  $translated);
     return $translated;
}

¿Necesitas cambiar más de un texto en WooCommerce o WordPress?

Si necesitas cambiar más de un texto en tu tienda, de nuevo gracias al filtro gettext, crearíamos entonces una función algo más compleja, como esta:

/**
 * Cambio de textos en WooCommerce/WordPress
 *
 * @link http://codex.wordpress.org/Plugin_API/Filter_Reference/gettext
 */
function my_text_strings( $translated_text, $text, $domain ) {
	switch ( $translated_text ) {
		case '¡Oferta!' :
			$translated_text = __( '¡Rebajado!', 'woocommerce' );
			break;
		case 'Añadir al carrito' :
			$translated_text = __( 'Añadir a la cesta', 'woocommerce' );
			break;
		case 'Productos relacionados' :
			$translated_text = __( 'Quizás te interesen estos fantásticos productos', 'woocommerce' );
			break;
	}
	return $translated_text;
}
add_filter( 'gettext', 'my_text_strings', 20, 3 );

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Ver más

  • Responsable: Mario Gómez Luelmo.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio. El Titular ha contratado los servicios de alojamiento web a 1&1 IONOS España S.L.U. que actúa como encargado de tratamiento.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.