Ya se hizo una pregunta similar aquí: traducciones de texto JavaScript de Magento 2 , pero Magento actualizó esta técnica de traducción en la versión beta.
¿Cómo puedo agregar o actualizar las traducciones utilizadas por Javascript?
Descubrí que Magento crea un archivo llamado 'js-translation.json' en la carpeta estática. Si edito este archivo directamente, veo que mis traducciones se actualizan. Pero, ¿dónde se crea este archivo y cómo puedo agregar traducciones para que Magento lo agregue automáticamente a js-translation.json cuando se genere?
Actualizar
Todavía no se da la respuesta correcta a esta pregunta, aunque Mage2.PRO me indicó la dirección correcta, no es la respuesta completa. Mi js-translation.json todavía está vacío cuando se genera.
Por ejemplo, me gusta traducir el botón Agregar al carrito. Este botón tiene tres estados: Agregar al carrito, Agregar ... y Agregar ... ¿Cómo puedo traducir estas palabras? Otro ejemplo, el 'No tiene artículos en su carrito de compras'. texto en el minicart. Creo que todas estas frases deberían traducirse de js-translation.json, pero ¿dónde agregarlas para que este archivo esté lleno de estas traducciones?
fuente
$.mage.__('Add To Cart')
elsetup:static-content:deploy
comando lo recogerá automáticamente . El único inconveniente es que debe tener en los archivos de configuración regional una traducción diferente para el texto. Los textos que tienen como traducción el mismo texto no se agregan al archivo json para no aumentar el tamaño sin una razón.Respuestas:
No estoy seguro si ya lo descubriste, pero pensé en responder de todos modos ...
Supongo que las otras respuestas van en la dirección correcta.
Suponiendo que ya tiene las traducciones instaladas, si no, por favor:
bin/magento i18n:pack -m replace -d source_nl_NL.csv . nl_NL
Entonces, antes que nada, borre el caché (como otros también sugirieron):
rm -rf var/cache var/generation var/page_cache var/view_preprocessed
En segundo lugar, borre su carpeta pub / static:
rm -rf pub/static/*/
Luego regeneramos el contenido estático: (me perdí el langcode en las otras respuestas ...)
bin/magento setup:static-content:deploy nl_NL
- Asegúrate de agregar el langcodeAhora verifique si se creó js-translation.json:
find pub/static/ -name "js-translation.json"
Lo más probable es que obtenga una lista de
js-translation.json
archivos. Verifique estos archivos y elimínelos si están vacíos o contienen algo parecido[]
.fuente
Intente agregar traducciones a archivos .csv, luego asegúrese de ejecutar los siguientes pasos:
fuente
Elimine todo el caché y elimine el contenido de la carpeta pub / static.
Vaya a su directorio raíz y ejecute el siguiente comando: -
php bin / magento setup: static-content: deploy
Esperemos que su problema se resuelva.
fuente
Tuve el mismo problema como "No puedo traducir frases en $ .mage .__ ('XXX')" cuando la frase en phtml funcionó perfectamente. Entonces, la solución fue ingeniosamente simple.
$ t (...) y $ .mage analizan solo archivos * .js
En consecuencia, no entra en el diccionario de traducción js.
Entonces, al representar un script de sección en archivos phtml, debe insertar directamente las frases ya traducidas con contenedores
__('Translated phrase')
.fuente