Contenido multilingüe e interfaz de administrador en un solo idioma.

14

Quiero que el contenido de mi sitio sea multilingüe. Tengo un conmutador de idiomas que puede alternar entre las traducciones de una página al inglés y al español. Quiero que la interfaz administrativa esté siempre en inglés, sin importar si navega desde una traducción de la página al español o al inglés.

Aquí está mi configuración en / admin / config / regional / idioma / detección :

ingrese la descripción de la imagen aquí

Aquí está mi configuración en user / 1 / edit :

ingrese la descripción de la imagen aquí

Mi interfaz de administración siempre está en inglés, pero ahora mi contenido también está siempre en inglés, sin importar si cambio la página al español.

He probado muchas configuraciones, incluida la configuración de detección de idioma de contenido .

¿Cuál es la configuración correcta para lograr esto?


/ es / nodo / 1

ingrese la descripción de la imagen aquí

/ admin / config / regional / idioma / detección / url

ingrese la descripción de la imagen aquí

/ admin / config / regional / idioma

ingrese la descripción de la imagen aquí

24ma13wg
fuente
¿Qué sucede si cambia la ruta de la URL manualmente en una página en inglés a una ruta en español? Además, intente poner primero la URL y las páginas de administración de la cuenta en segundo lugar.
Patrick Kenny
El contenido permanece en inglés, pero la interfaz que lo rodea está en español. Captura de pantalla agregada a la pregunta.
24ma13wg
En la configuración de usuario, establece el idioma del sitio en inglés, ¿qué sucede si cierra la sesión?
Si cierro la sesión, funciona correctamente, puedo alternar entre el contenido en inglés y español.
24ma13wg

Respuestas:

15

En una instalación nueva, podría hacerlo funcionar de esa manera:

En admin/config/regional/language/detection

  • ponga las páginas de administración de la cuenta en la parte superior de la detección de idioma de texto de la interfaz y, por supuesto, habilítela.
  • habilitar el método URL como segunda opción
  • Habilite la detección de idioma de contenido y ponga la URL encima de los métodos de detección.

     Inicio Administración Configuración Regional e idioma Idiomas

En user/1/editconfiguraciones de idioma:

  • configure el idioma de las páginas de administración con su idioma preferido

Hay varios problemas en OD al respecto, tal vez este sea el más relevante: cuando la detección del idioma del contenido es diferente de la detección del idioma de la interfaz, el idioma detectado no se aplica al contenido representado .

Aplique estos parches:

Caches vacíos:

  • $ drush cache-rebuild

Cambiador de idiomas desplegable y todo lo demás parece estar funcionando bien.

Un ejemplo de contenido en español, las cadenas que pasan por t () están traducidas, la barra de herramientas de administración en inglés ...

Un ejemplo de contenido en español.

La misma página editada: interfaz de administrador totalmente en inglés, pero el contenido muestra la traducción correcta ...

interfaz de administrador totalmente en inglés, pero el contenido muestra la traducción correcta

Kojo
fuente
Si entiendo su respuesta correctamente, el problema con su configuración es: (a) el conmutador de idioma desaparece (cuando la URL está deshabilitada en la detección de idioma de texto de la interfaz; y (b) solo el contenido se traduce en es / node / 1 : cualquier cosa en el código se ejecuta t()o |tpermanece sin traducir. Por ejemplo: "Powered by Drupal" no se transforma en "Funciona con Drupal". Solo quiero que las páginas / admin sean solo en inglés.
24ma13wg
@ 24ma13wg mi mal! Bien, he estado trabajando un poco más en torno a su problema, y ​​creo que esto está funcionando bien ahora. Voy a editar la respuesta. Check in 15mn;)
Kojo
@ 24ma13wg, por razones de claridad y referencia futura, reescribí la respuesta con la configuración y los parches exactos.
Kojo
1
Parece funcionar. Buena respuesta :-)
24ma13wg
1
¡gracias! No puedo entender por qué esta solución aún no está lista para usar, menos habilitada en el núcleo ... ¡en agosto de 2018!
mogio
0

El idioma preferido del usuario es el chino (zh-hans). Cuando estoy iniciando sesión en la URL del sitio no tengo el prefijo de idioma. Al cambiar el idioma en el idioma desplegable para todos los idiomas, se traduce como se esperaba. Cuando cambio el idioma al inglés (Site Default Language) y permanece como el idioma preferido del usuario.

Nota: Estoy usando dropdown_language para cambiar de idioma.

Amablemente ayuda en esto.

Govindaraju V
fuente