Contribuir traducciones
WCPOS se traduce mediante IA, guiada por un conjunto de reglas cuidadosamente ajustado, y se mejora gracias a personas como usted. La máquina produce una primera versión completa y coherente en cada idioma compatible poco después de que cambia una cadena; las personas detectan los matices, el contexto y las convenciones locales que una máquina pasa por alto. No hace falta traducir una aplicación completa ni ser desarrollador para ayudar. Esta página explica cómo funciona y dónde sugerir un cambio.
Cómo funcionan ahora las traducciones de WCPOS
Cada cadena traducible —la aplicación orientada al cajero, la aplicación de escritorio, las pantallas de administración de WordPress, las cadenas PHP del plugin y esta documentación— pasa por una única canalización automatizada:
- Las cadenas de origen se extraen automáticamente de las aplicaciones, el plugin y la documentación al repositorio central
wcpos/translations(y, para la documentación, a este repositoriowcpos/docs). - La IA las traduce a todos los locales compatibles, siguiendo un conjunto estricto de reglas que conserva marcadores de posición, código, nombres de marca y rutas de menú, mientras localiza el texto visible.
- Una comprobación diaria de integridad busca cadenas ausentes u obsoletas y las pone automáticamente en cola para su traducción, de modo que las cadenas nuevas y modificadas no quedan sin traducir.
- Cada lote llega en una pull request para revisión humana antes de publicarse. Después, las traducciones aprobadas se publican y se entregan automáticamente: a las aplicaciones mediante un CDN y al plugin mediante su actualizador de traducciones integrado.
Como todo el ciclo está automatizado, su labor como colaborador rara vez consiste en traducir desde un archivo en blanco; consiste en mejorar una traducción que ya existe. ¿Ha detectado una frase poco natural, un término que debería coincidir con el que usa WooCommerce en su locale o una etiqueta que no encaja en su contexto? Sugiera una corrección y se publicará para todos.
WCPOS solía depender del sitio de traducciones de WordPress (GlotPress) para las cadenas del plugin. Hemos dejado de usarlo por completo. Ese flujo de trabajo es lento y anticuado y, lo más importante, no permite la traducción automática, por lo que la mayoría de los idiomas nunca se completaban. Un proceso de IA ajustado cubre muchos más idiomas, se mantiene sincronizado automáticamente y, en la práctica, produce mejores resultados. Si ha traducido WCPOS allí antes, se agradece, pero ese ya no es el lugar para contribuir.
Dónde contribuir
Hay solo dos lugares, según lo que se quiera mejorar:
Aplicaciones y plugin
Todo lo que aparece en la aplicación POS, la aplicación de escritorio, las pantallas de administración de WordPress y el propio plugin: tanto las cadenas de la interfaz JavaScript como las cadenas PHP. Todo está en un único repositorio: wcpos/translations. Conviene tener conocimientos básicos de GitHub.
Esta documentación
El sitio de documentación que está leyendo ahora. Los archivos MDX traducidos se encuentran en el repositorio wcpos/docs, en i18n/<locale>/. Conviene conocer Markdown.
Mejorar las traducciones de la aplicación y del plugin
Todas las traducciones de la aplicación y del plugin se encuentran en el repositorio wcpos/translations. Ahí se encuentra:
source/— las cadenas en inglés extraídas. No las edite — se generan automáticamente a partir de las aplicaciones y del plugin.translations/js/<locale>/<project>/<namespace>.json— las cadenas traducidas de la interfaz de usuario. Esto es lo que se edita para corregir las aplicaciones y las pantallas de administración.translations/php/<locale>/— las cadenas traducidas del plugin. Edite el archivo.po; el.moy.l10n.phparchivos que están junto a él se generan automáticamente, así que no los modifique.
Las cadenas JavaScript se dividen en cuatro <project> carpetas:
| Proyecto | Qué abarca |
|---|---|
monorepo | La aplicación POS que usa el cajero — botones, carrito, pago, cuadros de diálogo, errores. |
electron | El contenedor de la aplicación de escritorio (Windows/macOS). |
woocommerce-pos | Las pantallas React de WP Admin del plugin gratuito — Ajustes, Plantillas, Registros, etc. |
woocommerce-pos-pro | Las pantallas React de WP Admin del plugin Pro — editor de tiendas, ajustes Pro. |
Para sugerir una corrección:
- Busque la cadena en el archivo correspondiente a su localización y proyecto; por ejemplo,
translations/js/de_DE/monorepo/core.jsonpara una cadena de la aplicación en alemán, otranslations/php/de_DE/woocommerce-pos-de_DE.popara una cadena del plugin en alemán. - Edite el valor traducido. Deje las claves JSON, PHP
msgid, y cualquier{{interpolation}},%s,%d, o<tag>marcadores de posición exactamente como están. - Abra una pull request. Para una corrección de una sola línea, puede usar el icono de lápiz en GitHub y se abrirá la PR automáticamente. Los revisores comprueban el cambio y lo fusionan.
Si su idioma aún no está disponible, consulte Añadir un nuevo idioma.
Mejorar esta documentación
El sitio de documentación usa la configuración estándar de i18n de Docusaurus. La fuente en inglés se encuentra en versioned_docs/, y las copias traducidas por IA se encuentran en wcpos/docs en i18n/<locale>/docusaurus-plugin-content-docs/. Cada página en inglés tiene una página equivalente en cada idioma activo.
Para sugerir una corrección:
- Abra la página en su idioma y haga clic en Editar esta página al final; eso le lleva directamente al archivo MDX traducido en GitHub.
- Edite la traducción. Mantenga intactas la sintaxis Markdown/MDX, los enlaces, los fragmentos de código y las claves del frontmatter; traduzca el texto, los encabezados y las etiquetas visibles.
- Abra una pull request. No edite la fuente en inglés en
versioned_docs/para "corregir" una traducción; solo el archivo eni18n/<locale>/.
Para una contribución más amplia — una sección completa o el inicio de una configuración regional totalmente nueva — primero se debe abrir una incidencia para que podamos coordinarnos.
Añadir un nuevo idioma
Las aplicaciones y el plugin ya incluyen traducciones para más de 50 configuraciones regionales (consulte locales.json para ver la lista completa). La documentación incluye un conjunto más reducido, listado a continuación. Si falta su idioma — o solo está cubierto parcialmente — abra una incidencia en el repositorio correspondiente y habilitaremos la configuración regional. La canalización de IA puede completar un nuevo idioma rápidamente; a partir de ahí, solo queda que la comunidad lo revise y mejore.
Códigos de configuración regional
Esta documentación se publica actualmente en los siguientes idiomas:
| Código | Idioma |
|---|---|
ar | Árabe (de derecha a izquierda) |
de | Alemán |
es | Español |
fr | Francés |
hi-IN | Hindi (India) |
it | Italiano |
ja | Japonés |
ko | Coreano |
nl | Neerlandés |
pt-BR | Portugués (Brasil) |
zh-CN | Chino (simplificado) |
Nota sobre los formatos de códigos de locale: las aplicaciones y el plugin (wcpos/translations) usan el formato con guion bajo para carpetas y nombres de archivo: de_DE, pt_BR, zh_CN, e incluyen tanto idiomas base (de, fr, es) como variantes regionales (de_AT, fr_CA, es_MX). La documentación y las etiquetas de idioma web usan el formato con guion: pt-BR, hi-IN, zh-CN. Use el formato que corresponda al repositorio que se esté editando.
Consejos para traductores
Estas reflejan las reglas que sigue la canalización de IA, por lo que son los mismos aspectos que revisará una persona encargada de la revisión:
- Mantenga intactos los marcadores de posición. Las cadenas suelen contener
{{variable}},%s,%d, o<strong>etiquetas: traduzca el texto que las rodea, pero deje los marcadores de posición exactamente como están. WCPOS sustituye valores reales en ellos en tiempo de ejecución. - Mantenga exactos los nombres de marcas y productos.
WCPOS,WCPOS Pro,WooCommerce,WordPress,Stripe,Stripe TerminalySumUpse mantienen tal cual. Use WCPOS en el texto dirigido a clientes, no "WooCommerce POS", que solo corresponde a identificadores técnicos como slugs y URL. - Localice las etiquetas visibles de la interfaz. Las etiquetas de menú, las etiquetas de ajustes y el texto de los botones deben sonar naturales en su idioma: coincida con lo que WordPress y WooCommerce ya usan en su locale (por ejemplo, una ruta
WP Admin > Ajustes > Pagosdebe usar los nombres de menú de WordPress de su locale). - Mantenga el tono existente. La documentación y la interfaz de WCPOS son deliberadamente prácticas y directas, y usan un registro formal o neutral. Si el inglés dice "Add Coupon", use la forma verbal que su locale utiliza en botones similares, no un sustantivo literal.
- No traduzca código, URL ni ID técnicos. Los códigos de cupón, ID de pasarelas, códigos de locale, rutas de archivo y shortcodes se mantienen en inglés. Si hay dudas, déjelo sin traducir; es más seguro que alterar algo de lo que depende el sistema.
- Pruebe en contexto si puede. Establezca el sitio o la aplicación en su locale y revise la cadena en la pantalla real. Una frase que encaja en una pantalla puede ajustarse mal en otra.
- Idiomas de derecha a izquierda (RTL): árabe, hebreo, persa y urdu también necesitan que las plantillas de recibo estén marcadas como RTL. WCPOS incluye plantillas de recibo RTL integradas; consulte Personalizar el recibo para ver la galería.
Dónde pedir ayuda
- Discord de WCPOS: para conversaciones y preguntas sobre traducción (invitación).
- Incidencias de GitHub: informe en
wcpos/translationspara las aplicaciones y el plugin, o enwcpos/docspara la documentación.