blog webempresa

Traducir o reemplazar textos en WordPress a través de tu function.php

por | Ago 25, 2022 | Aprender WordPress

Traducir o reemplazar textos en WordPress a través de tu function.php

  Introducción


En la actualidad existen diferentes formas para traducir cadenas de texto en WordPress ya sea traduciendo directamente desde los archivos PO/MO o utilizado algún plugin que nos permiten traducir o modificar cualquier texto en nuestro sitio web desarrollador con WordPress, en su mayoría de estos complementos son gratuitos y podemos descargarlos directamente desde el repositorio de plugins de WordPress; sin embargo, en algunas ocasiones queremos realizar el proceso un poco más rápido sin la necesidad de añadir plugins adicionales en nuestro sitio web.

Si deseas ver como traducir cadenas de texto ya sea de temas o plugins con un complemento adicional puedes revisar el siguiente artículo: Traducción de plantillas, temas y plugins en WordPress

Si lo que deseas es poder traducir directamente alguna cadena de texto en su sitio web a través de un código en el function.php de tu tema en esta entrada aprenderemos a hacerlo.

  Modificando cadenas de texto con nuestro funtion.php


Afortunadamente como lo hemos mencionado hay una forma rápida de traducir textos en nuestro sitio web, para hacer esto lo primero que tenemos que hacer es ingresar a nuestro wePanel y luego Administrador de archivos -> Public_html -> Carpeta de tu sitio web una vez dentro directorio ahora tenemos que ingresar a Wp-content-> theme -> Tu tema y editar el archivo function.php

  Recuerda
Si deseas añadir cualquier cambio en el archivo function.php de tu tema lo más recomendable es realizarlo a través de un tema hijo

Una vez tenemos dentro de nuestro archivo function.php solo tenemos que añadir el siguiente código, el cual se encarga de hacer uso del filtro gettext que reemplaza el texto antiguo con el nuevo texto que deseamos añadir, es importante tener en cuenta que se distingue entre mayúsculas y minúsculas por lo que debemos escribirlos exactamente como se muestra en el sitio web.

Te este código debes reemplazad lo que indica Texto Antiguo y Nuevo texto según las modificaciones de los textos que deseas realizar en tu sitio web.

function translate_any_text_wp( $translated_text ) {
    if ( 'Texto Antiguo'  === $translated_text ) {
        $translated_text = 'Nuevo Texto';
    }
    return $translated_text;
}
add_filter( 'gettext', 'translate_any_text_wp', 20 );

De esta forma puedes traducir cualquier cadena de texto que tengas ahora en tu sitio web y desees modificar.

  Modificar varios textos al mismo tiempo


Si deseas traducir varias cadenas de texto en tu sitio web al mismo tiempo puedes utilizar el siguiente código

function change_multiple_texts( $translated ) {
    $text       = array(
        'Texto Antiguo 1' => 'Nuevo texto',
        'Texto Antiguo 2' => 'Nuevo texto',
        'Texto Antiguo 2' => 'Nuevo texto',
    );
    $translated = str_ireplace( array_keys( $text ), $text, $translated );
    return $translated;
}
add_filter( 'gettext', 'change_multiple_texts', 20 );

De esta forma puedes modificar varias cadenas de texto al mismo tiempo sin necesidad de añadir diferentes códigos en el function de tu tema.

  Conclusiones:


Si lo que deseamos traducir son textos cortos y muy específicos podemos hacer uso de esta opción que mencionamos, de esta forma podemos ahorrarnos tener que instalar un complemento adicional en nuestro sitio web y reducir la cantidad de plugins que tenemos instalados.

¿Te ha resultado útil este artículo?

Promo hosting 70% de descuento