Traducir nombre del libro en los títulos de las lecturas (≈2252 posts EN/FR/IT/PT) #143

Closed
opened 2026-06-28 19:15:28 +00:00 by rafa · 0 comments
Owner

Problema

Los posts de lecturas/leccionario (evangelios y primeras lecturas) traducidos a EN/FR/IT/PT en batches anteriores tienen el cuerpo traducido pero el título conserva el nombre del libro en español. Ej.: el evangelio de la carta de esta semana salía como MATEO 10, 37-42 en inglés en vez de Matthew 10, 37-42 (arreglado a mano el 2026-06-24, grupo Polylang 2685: 49550 EN, 49551 FR, 49552 IT, 49553 PT).

Alcance

~2252 posts no-ES cuyo título empieza por una cita bíblica (LIBRO número, ...) con el libro en español. Distribución aprox.: EN 257 · FR 259 · IT 227 · PT 312 (con el patrón estricto sube por incluir todas las lecturas). Libros frecuentes sin traducir: LUCAS(396), JUAN(268), MARCOS(200), ISAÍAS(195), MATEO(191), HECHOS, HEBREOS, ROMANOS, EFESIOS, CORINTIOS, FILIPENSES, GÉNESIS, ÉXODO, SABIDURÍA, COLOSENSES, DEUTERONOMIO, JEREMÍAS, EZEQUIEL, APOCALIPSIS, SANTIAGO, PROVERBIOS, DANIEL, etc.

Solución (segura, determinista)

  1. Construir mapa de libros bíblicos ES → {en,fr,it,pt} (los 73 libros, con variantes acentuadas/mayúsculas). Ya hay ejemplos correctos en la BD: Matthew/Matthieu/Matteo/Mateus, John/Jean/Giovanni/João, Mark/Marc/Marco/Marcos, Acts/Actes/Atti/Atos, Genesis/Genèse/Genesi/Gênesis…
  2. Para cada post no-ES cuyo post_title casa ^<LIBRO_ES>\s+\d (patrón de cita → excluye nombres de persona como Juan/Lucas/Marcos), reemplazar SOLO el token del libro al inicio por su traducción del idioma del post. No tocar capítulo/versículos ni el resto.
  3. Title-only. El cuerpo ya está traducido; no se regenera nada con IA.
  4. Dry-run con reporte → revisar muestra por idioma → aplicar. Después sincronizar títulos a prod (los IDs ES coinciden; las traducciones existen en prod).

Notas

  • Cuidado con falsos positivos: JUAN/LUCAS/MARCOS/MATEO como nombre de persona → el patrón exige número detrás (Juan 3, 16), no Juan Pablo II.
  • Idempotente: re-ejecutar no debe re-tocar los ya traducidos (saltar si el token ya está en idioma destino).
  • Script sugerido: scripts/translate_lectura_titles.php (nuevo).

Programado

Ejecutar el 2026-06-25 a las 12:30 (acordado con Rafa el 2026-06-24).

## Problema Los posts de **lecturas/leccionario** (evangelios y primeras lecturas) traducidos a EN/FR/IT/PT en batches anteriores tienen el **cuerpo traducido** pero el **título conserva el nombre del libro en español**. Ej.: el evangelio de la carta de esta semana salía como `MATEO 10, 37-42` en inglés en vez de `Matthew 10, 37-42` (arreglado a mano el 2026-06-24, grupo Polylang 2685: 49550 EN, 49551 FR, 49552 IT, 49553 PT). ## Alcance ~**2252** posts no-ES cuyo título empieza por una **cita bíblica** (`LIBRO número, ...`) con el libro en español. Distribución aprox.: EN 257 · FR 259 · IT 227 · PT 312 (con el patrón estricto sube por incluir todas las lecturas). Libros frecuentes sin traducir: LUCAS(396), JUAN(268), MARCOS(200), ISAÍAS(195), MATEO(191), HECHOS, HEBREOS, ROMANOS, EFESIOS, CORINTIOS, FILIPENSES, GÉNESIS, ÉXODO, SABIDURÍA, COLOSENSES, DEUTERONOMIO, JEREMÍAS, EZEQUIEL, APOCALIPSIS, SANTIAGO, PROVERBIOS, DANIEL, etc. ## Solución (segura, determinista) 1. Construir mapa de libros bíblicos **ES → {en,fr,it,pt}** (los 73 libros, con variantes acentuadas/mayúsculas). Ya hay ejemplos correctos en la BD: Matthew/Matthieu/Matteo/Mateus, John/Jean/Giovanni/João, Mark/Marc/Marco/Marcos, Acts/Actes/Atti/Atos, Genesis/Genèse/Genesi/Gênesis… 2. Para cada post no-ES cuyo `post_title` casa `^<LIBRO_ES>\s+\d` (patrón de cita → excluye nombres de persona como Juan/Lucas/Marcos), **reemplazar SOLO el token del libro al inicio** por su traducción del idioma del post. No tocar capítulo/versículos ni el resto. 3. **Title-only.** El cuerpo ya está traducido; no se regenera nada con IA. 4. Dry-run con reporte → revisar muestra por idioma → aplicar. Después **sincronizar títulos a prod** (los IDs ES coinciden; las traducciones existen en prod). ## Notas - Cuidado con falsos positivos: `JUAN/LUCAS/MARCOS/MATEO` como nombre de persona → el patrón exige número detrás (`Juan 3, 16`), no `Juan Pablo II`. - Idempotente: re-ejecutar no debe re-tocar los ya traducidos (saltar si el token ya está en idioma destino). - Script sugerido: `scripts/translate_lectura_titles.php` (nuevo). ## Programado Ejecutar el **2026-06-25 a las 12:30** (acordado con Rafa el 2026-06-24).
rafa closed this issue 2026-06-28 19:15:28 +00:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: rafa/feadulta#143