Ir al contenido principal
Versión: 1.x

Contribuir con traducciones

WCPOS se traduce mediante IA, guiada por un conjunto de reglas cuidadosamente ajustadas, y se mejora gracias a personas como usted. La máquina produce una primera versión completa y consistente en cada idioma soportado poco después de que una cadena cambia; las personas captan los matices, el contexto y las convenciones locales que la máquina pasa por alto. No es necesario traducir una aplicación completa ni ser desarrollador para colaborar. Esta página explica cómo funciona el proceso y dónde sugerir cambios.

Cómo funcionan las traducciones de WCPOS actualmente

Cada cadena traducible — la aplicación para cajeros, la aplicación de escritorio, las pantallas de administración de WordPress, las cadenas PHP del plugin y esta documentación — pasa por un único flujo automatizado:

  1. Las cadenas de origen se extraen automáticamente de las aplicaciones, el plugin y la documentación hacia el repositorio central wcpos/translations (y, para la documentación, hacia el repositorio wcpos/docs).
  2. La IA las traduce a cada idioma soportado, siguiendo un conjunto estricto de reglas que preserva marcadores de posición, código, nombres de marca y rutas de menú mientras localiza el texto visible.
  3. Una verificación diaria de completitud busca cadenas faltantes u obsoletas y las pone automáticamente en cola para su traducción, de modo que las cadenas nuevas o modificadas no queden sin traducir.
  4. Cada lote se presenta en un pull request para revisión humana antes de publicarse. Las traducciones aprobadas se publican y distribuyen automáticamente — a las aplicaciones a través de un CDN, y al plugin mediante su actualizador de traducciones integrado.

Dado que todo el ciclo está automatizado, la labor como colaborador rara vez consiste en traducir desde un archivo en blanco, sino en mejorar una traducción que ya existe. Si se detecta una frase poco natural, un término que debería coincidir con el que usa WooCommerce en su idioma, o una etiqueta que no se lee bien en contexto, basta con sugerir una corrección y se distribuirá a todos.

Ya no se utiliza translate.wordpress.org

WCPOS solía depender del sitio de traducción de WordPress (GlotPress) para las cadenas del plugin. Se ha abandonado por completo ese sistema. 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 completaron. Un pipeline de IA optimizado cubre muchos más idiomas, se mantiene sincronizado automáticamente y produce mejores resultados en la práctica. Si ha traducido WCPOS allí anteriormente, gracias, pero ya no es allí donde se realizan las contribuciones.

Dónde contribuir

Solo hay dos lugares, dependiendo de lo que se desee 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 interfaz JavaScript como las cadenas PHP. Todo se encuentra en un solo repositorio: wcpos/translations. Es útil tener conocimientos básicos de GitHub.

Esta documentación

El sitio de documentación que se está leyendo en este momento. Los archivos MDX traducidos se encuentran en el repositorio wcpos/docs bajo i18n/<locale>/. Es útil tener conocimientos de Markdown.

Mejorar las traducciones de la aplicación y el plugin

Todas las traducciones de la aplicación y del plugin se encuentran en el repositorio wcpos/translations. Allí se encuentran:

  • source/ — las cadenas en inglés extraídas. No se deben editar — se generan automáticamente a partir de las aplicaciones y el plugin.
  • translations/js/<locale>/<project>/<namespace>.json — las cadenas de interfaz traducidas. Esto es lo que se debe editar para corregir las aplicaciones y las pantallas de administración.
  • translations/php/<locale>/ — las cadenas del plugin traducidas. Se debe editar el archivo .po; los archivos .mo y .l10n.php que se encuentran junto a él son generados, por lo que no se deben modificar.

Las cadenas de JavaScript están divididas en cuatro <project> carpetas:

ProyectoQué cubre
monorepoLa aplicación POS que utiliza el cajero — botones, carrito, cobro, diálogos, errores.
electronLa aplicación de escritorio (Windows/macOS).
woocommerce-posLas pantallas React de WP Admin del plugin gratuito — Ajustes, Plantillas, Registros, etc.
woocommerce-pos-proLas pantallas React de WP Admin del plugin Pro — Editor de Tiendas, Ajustes Pro.

Para sugerir una corrección:

  1. Buscar la cadena en el archivo correspondiente al idioma y proyecto; por ejemplo, translations/js/de_DE/monorepo/core.json para una cadena de la aplicación en alemán, o translations/php/de_DE/woocommerce-pos-de_DE.po para una cadena del plugin en alemán.
  2. Editar el valor traducido. Dejar las claves JSON, PHP msgid, y todos los {{interpolation}}, %s, %d, o <tag> marcadores de posición exactamente como están.
  3. Abrir un pull request. Para una corrección de una sola línea, se puede utilizar el icono de lápiz en GitHub y el PR se abrirá automáticamente. Los revisores verifican el cambio y lo fusionan.

Si el idioma aún no está disponible, consulte Agregar un nuevo idioma.

Mejorar esta documentación

El sitio de documentación utiliza la configuración estándar de i18n de Docusaurus. El código 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 su correspondiente en cada idioma activo.

Para sugerir una corrección:

  1. Abrir la página en el idioma correspondiente y hacer clic en Editar esta página en la parte inferior — esto lleva directamente al archivo MDX traducido en GitHub.
  2. Editar la traducción. Dejar la sintaxis Markdown/MDX, los enlaces, los fragmentos de código y las claves de frontmatter intactos — traducir la prosa, los encabezados y las etiquetas visibles.
  3. Abrir un pull request. No editar el código fuente en inglés en versioned_docs/ para "corregir" una traducción — solo el archivo en i18n/<locale>/.

Para una contribución mayor — una sección completa o el inicio de un nuevo idioma — es recomendable abrir un issue primero para poder coordinarlo.

Agregar un nuevo idioma

Las aplicaciones y el plugin ya incluyen traducciones para más de 50 idiomas (consultar locales.json para la lista completa). La documentación se publica en un conjunto más reducido, listado a continuación. Si un idioma no aparece — o solo está parcialmente cubierto — se puede abrir un issue en el repositorio correspondiente y se configurará el idioma. El pipeline de IA puede completar un nuevo idioma rápidamente; a partir de ahí, es cuestión de que la comunidad lo refine.

Códigos de idioma

Esta documentación se publica actualmente en los siguientes idiomas:

CódigoIdioma
arÁrabe (derecha a izquierda)
deAlemán
esEspañol
frFrancés
hi-INHindi (India)
itItaliano
jaJaponés
koCoreano
nlNeerlandés
pt-BRPortugués (Brasil)
zh-CNChino (simplificado)

Nota sobre los formatos de código de idioma: las aplicaciones y el plugin (wcpos/translations) utilizan 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 utilizan el formato con guionpt-BR, hi-IN, zh-CN. Se debe utilizar la forma que corresponda al repositorio que se esté editando.

Consejos para traductores

Estas reglas son las mismas que sigue el pipeline de IA, por lo que también son las que un revisor verificará:

  • Mantener los marcadores de posición intactos. Las cadenas a menudo contienen {{variable}}, %s, %d, o <strong> tags — traducir el texto circundante, pero dejar los marcadores de posición exactamente como están. WCPOS sustituye valores reales en ellos durante la ejecución.
  • Mantener los nombres de marca y producto exactos. WCPOS, WCPOS Pro, WooCommerce, WordPress, Stripe, Stripe Terminal y SumUp se mantienen tal cual. Utilizar WCPOS en el texto dirigido al cliente — no "WooCommerce POS", que solo pertenece a identificadores técnicos como slugs y URLs.
  • Localizar las etiquetas visibles de la interfaz. Las etiquetas de menú, etiquetas de ajustes y texto de botones deben leerse de forma natural en el idioma correspondiente — deben coincidir con lo que WordPress y WooCommerce ya utilizan en el idioma local (por ejemplo, una ruta como WP Admin > Ajustes > Pagos debe usar los nombres de menú de WordPress en el idioma local).
  • Mantener el tono existente. La documentación y la interfaz de WCPOS son deliberadamente prácticas y directas, y utilizan un registro formal/neutral. Si el texto en inglés dice "Add Coupon", se debe usar la forma verbal que el idioma local emplea en botones similares — no un sustantivo literal.
  • No traducir código, URLs ni identificadores técnicos. Los códigos de cupón, identificadores de pasarela, códigos de idioma, rutas de archivos y shortcodes permanecen en inglés. En caso de duda, es preferible dejarlo sin traducir — es más seguro que alterar algo de lo que depende el sistema.
  • Probar en contexto si es posible. Configurar el sitio o la aplicación en el idioma local y verificar la cadena en la pantalla real. Una frase que se ajusta bien en una pantalla puede mostrarse de forma inadecuada en otra.
  • Idiomas de derecha a izquierda (RTL) — árabe, hebreo, persa, urdu — también necesitan que las plantillas de recibos estén marcadas como RTL. WCPOS incluye plantillas de recibos RTL predefinidas; consultar Personalizar el recibo para ver la galería.

Dónde solicitar ayuda

  • WCPOS Discord — para debates y preguntas sobre traducción (invitación).
  • GitHub issues — reportar en wcpos/translations para las aplicaciones y el plugin, o en wcpos/docs para la documentación.