Enlaces internos de cartas rotos (localhost:8081 en ES + relativos en traducciones) #92

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

Labels: area:content, bug:important

Problema

Los enlaces internos de las cartas estaban rotos en dos niveles:

  1. Cartas ES (28 posts): enlaces a http://localhost:8081/<slug>/ hardcodeado. Cargan en local pero rompen en prod.
  2. Traducciones EN/FR/IT/PT (68 posts = 17×4): el traductor LLM convirtió esas URLs en relativas /<slug>/ (quitó el host) y tradujo algunos slugs. En local rompen (falta el subdir /fea), y mezclaban idiomas (enlace EN → artículo ES).

Reportado por Rafa: un artículo EN apuntaba a https://farmer.taild3aaf6.ts.net/moses-the-samanitan-and-the-drunkard/ (sin /fea/).

Solución aplicada (local, 2026-06-17)

Script determinista scripts/fix_carta_links.php (idempotente, dry-run + APPLY, backup en /tmp/fix_links_bak/):

  • Para cada <a href>, si el slug resuelve a un post del sitio, se reescribe al permalink absoluto del post en el idioma de la página (la carta EN enlaza a la versión EN del artículo; fallback al ES si no hay traducción —p.ej. lecturas bíblicas).
  • Legacy .html, dominios externos y placeholders se dejan intactos.
  • Resultado: 1226 enlaces reescritos en 96 posts. Verificado: 0 localhost:8081 y 0 relativos rotos.

Pendiente

  • Desplegar a prod (las cartas del gap aún están en draft). Al sincronizar hay que hacer search-replace de dominio farmer.taild3aaf6.ts.net/feawp-nuevo.feadulta.com.
  • Causa raíz aguas arriba: el generador de cartas mete localhost:8081; revisar para que las cartas nuevas no nazcan con ese host.
**Labels:** area:content, bug:important ## Problema Los enlaces internos de las cartas estaban rotos en dos niveles: 1. **Cartas ES** (28 posts): enlaces a `http://localhost:8081/<slug>/` hardcodeado. Cargan en local pero **rompen en prod**. 2. **Traducciones EN/FR/IT/PT** (68 posts = 17×4): el traductor LLM convirtió esas URLs en **relativas** `/<slug>/` (quitó el host) y tradujo algunos slugs. En local rompen (falta el subdir `/fea`), y mezclaban idiomas (enlace EN → artículo ES). Reportado por Rafa: un artículo EN apuntaba a `https://farmer.taild3aaf6.ts.net/moses-the-samanitan-and-the-drunkard/` (sin `/fea/`). ## Solución aplicada (local, 2026-06-17) Script determinista `scripts/fix_carta_links.php` (idempotente, dry-run + APPLY, backup en `/tmp/fix_links_bak/`): - Para cada `<a href>`, si el slug resuelve a un post del sitio, se reescribe al **permalink absoluto del post en el idioma de la página** (la carta EN enlaza a la versión EN del artículo; fallback al ES si no hay traducción —p.ej. lecturas bíblicas). - Legacy `.html`, dominios externos y placeholders se dejan intactos. - Resultado: **1226 enlaces reescritos en 96 posts**. Verificado: 0 `localhost:8081` y 0 relativos rotos. ## Pendiente - Desplegar a prod (las cartas del gap aún están en draft). Al sincronizar hay que hacer search-replace de dominio `farmer.taild3aaf6.ts.net/fea` → `wp-nuevo.feadulta.com`. - Causa raíz aguas arriba: el generador de cartas mete `localhost:8081`; revisar para que las cartas nuevas no nazcan con ese host.
rafa closed this issue 2026-06-28 19:14:29 +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#92