Localización: Quiero el backend: inglés y frontend en el idioma definido

9

Me gustaría tener el backend de Wordpress en inglés y usar una configuración regional diferente para el frontend

hasta ahora, me he dado cuenta de que tal vez podría hacerlo configurando en wpconfig la configuración regional que quiero usar en el frontend, luego agregue en functions.php algo como esto:

add_filter('locale', 'mytheme_backendlocale');
function mytheme_backendlocale($locale) {
    if ( is_admin() ) {
        return 'en_US';
    }
    return $locale;
}

¿Es esta la mejor práctica para lograr lo que quiero o debo hacerlo de manera diferente?

    
pregunta unfulvio 01.11.2011 - 11:15

4 respuestas

2

Instale el complemento WP Native Dashboard . Luego, puede configurar un idioma para el front-end en su wp-config.php y cada usuario puede elegir otro para el back-end.
Consulte Cambiar el idioma de la plantilla de comentarios para obtener más información y una captura de pantalla.

    
respondido por el fuxia 13.06.2012 - 07:53
1

Hay un complemento que puede ser lo que necesitas.

enlace

    
respondido por el Andy James 01.11.2011 - 11:52
1

Hasta ahora, creo que la respuesta de Fulvio es la mejor. Estoy usando ese filtro incluso en una configuración de varios sitios, con solo una línea:

add_filter('locale', 'set_admin_locale');
function set_admin_locale($locale) {
  return 'en_US';
}

Básicamente, a veces, y en este caso, uso sitios múltiples para sitios en varios idiomas en lugar de complementos. Además, tengo 1 tema único para cada idioma (generalmente temas secundarios del idioma principal). Por lo tanto, cada sitio de la red tiene su propio idioma, pero en el lado del administrador, necesito todas las interfaces en italiano.

Entonces, lo que hago es:

  1. No uso la constante general WPLANG en wp-config.php
  2. Configuré el italiano en todos los sitios de la red
  3. En las funciones de cada tema.php uso el filtro anterior para controlar el idioma / la configuración regional.

NOTA: ese filtro no cambiará el idioma del administrador, por lo que no es necesario verificar si es_admin ()

    
respondido por el Stratboy 18.04.2014 - 16:40
0

Si alguien todavía está buscando eso, esto es lo que debe hacer desde la versión 4.7

function wp_noshor_redefine_locale($locale) {
    if( is_admin() ):
        switch_to_locale('en_US');
    endif;
}
add_filter('init','wp_noshor_redefine_locale');

Esto obliga al tablero de control a cargarse en inglés, luego puedes ir a la configuración y configurar el idioma que desees.

    
respondido por el Motaz M. El Shazly 07.04.2018 - 03:29

Lea otras preguntas en las etiquetas