¿Reemplazar textos del sitio de manera eficiente?

No, no lo creo.

Esto no accede a la base de datos (creo que sería demasiado lento).

Creo que la mayor parte del contenido local se procesa en memoria para mayor velocidad, utilizando Redis como caché (estaré encantado de que me corrijan si me equivoco).

Lo único que se almacena en la base de datos son tus modificaciones (en la tabla translation_overrides), que se leerán al inicializar la aplicación o de forma individual cuando realices una única modificación mientras estás en línea.

Solo señalaría un par de cosas:

  • aumentar significativamente el número de modificaciones podría alargar el tiempo de inicialización de tu aplicación (no estoy seguro de que nadie haya medido esto).
  • estas modificaciones pueden convertirse en una molestia administrativa de mantener a medida que Discourse evoluciona pero mantiene su propia nomenclatura. Te estás inventando trabajo aquí.
  • dado que ahora es, sin duda, la plataforma de foros más popular, mucha gente ya utiliza al menos un sitio de Discourse y está muy acostumbrada a la nomenclatura, así que considera no confundir a tus usuarios cambiando lo que ya les resulta familiar por normas anteriores.

Ver también:

Esto implica que cada Categoría tiene sus propios administradores, URL, configuraciones, propósito… por ejemplo, Meta es un foro. No está compuesto por varios foros… Realmente no estoy seguro de cómo argumentarías eso. Pero me desvío del tema.