Hay muchas ocasiones en que puede ser interesante modificar elementos de la administración de WordPress para adaptarlos al gusto de un cliente o de uno mismo y, como todo en WordPress, lo puedes conseguir de varias maneras.
El modo «a lo bestia» sería crear tu propia traducción, adaptada a tus gustos o del proyecto, pero si solo quieres modificar unos cuantos textos no es necesario hacer esa burrada, que además se iría al traste en cada actualización de WordPress.
Un modo sencillo de modificar textos de WordPress y que no se pierdan en cada actualización es crear una función, usando gettext
y ngettext
que modifique aquellos textos que quieres personalizar, y sería algo así:
//Textos traducidos a medida add_filter( 'gettext', 'wps_translate_words_array' ); add_filter( 'ngettext', 'wps_translate_words_array' ); function wps_translate_words_array( $translated ) { $words = array( // 'palabra a traducir' = > 'traducción' 'Entradas' => 'Noticias', 'Entrada' => 'Noticia', 'Comenetarios' => 'Debates', 'Medios' => 'Imágenes', 'Escritorio' => 'Panel de control', ); $translated = str_ireplace( array_keys($words), $words, $translated ); return $translated; }
Guardas los cambios en tu fichero de funciones y tendrás lo que buscabas. El código anterior es solo un ejemplo, que puedes modificar a tu gusto, personalizándolo a gusto del cliente, poniéndolo en Klingon o lo que prefieras..
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
Una pequeña función muy útil, Fernando. Gracias por compartirla! Me será muy útil.
Un detalle: Has cambiado los prefijos de la función en los filtros, pero te has olvidado hacerlo cuando la defines. También debería ser aw_translate_words_array en lugar de wps_translate_words_array.
Se me colo, ya esta cambiado
Gracias!
Muy interesante Fernando… Todavía no sé porqué se llama Entradas, no es del todo intuitivo. Yo voy a cambiarlo a Blog a partir de ahora, y el resto como lo has dejado tú…
Aunque acabo de probarlo y me da problemas… siguiendo el consejo de Joan se arregla…
Perfecto!, también me dio problemas pero con el detalle que aportó Joanse solucionó
Kapla!
Como hago para llamar a la función? En que archivo PHP debo poner el código? Soy nuevo, disculpen mi ignorancia.
Echa un vistazo a esto: https://ayudawp.com/crea-un-plugin-para-liberar-el-fichero-functions-php/
Gracias! Me útil, lo voy a probar.
hola fernando me funciona en el compu pero en el celular no, debo hacer algo adicional?
que codigo se podria poner para que estos cambios solo afectasen a un producto en concreto?