Cambiar la cabecera (header) en función del idioma

Ahora que estamos cada vez mas inmersos en la internacionalización de las empresas y vender nuestros productos y servicios en el extranjero se convierte en una via de ingresos importante para algunos sectores, resulta necesario tener tu página web en múltiples idiomas.

Hoy en dia, disponemos de un gran número de plugins para poder internacionalizar nuestra web con WordPress.

Uno de los plugins mas utilizados o conocidos es qtranslate.
En el fichero de la plantilla de pagina a modificar (page.php por ejemplo) deberás sustituir elSi tienes este plugin instalado, te resultará de interés el siguiente código para poder personalizar la cabecera (header) de tu página en función del idioma que seleccione el usuario.

get_header();
por estas lineas de código:

<?php if (qtrans_getLanguage() == 'es'): ?> 
<?php include(TEMPLATEPATH.'/header.php' ); ?> 
<?php else : ?> 
<?php include(TEMPLATEPATH.'/header-otro.php' ); ?> 
<?php endif; ?> 

En este caso, si el idioma seleccionado es el Español (‘es’) mostrará el header.php. Si no es así se cargará el otro header donde estará el formato que previamente habremos creado para nuestra “web internacional”

 

Desactivar menús en el administrador de WordPress

En alguna ocasión, podemos encontrarnos que al instalar un nuevo tema o un plugin de WordPress, aparezcan nuevos elementos en el menú de administración que no vamos a utilizar y que resulte interesante ocultarlos.

Al igual que la popular frase “Todos los caminos conducen a Roma”, aquí también tenemos varias opciones para hacerlo.

La primera opción puede ser mediante la instalación de un plugin. Existen bastantes opciones pero hay uno denominado Admin Menu Editor para WordPress que es muy sencillo de utilizar y rápido de gestionar como podeis ver en la imagen adjunta.

La segunda opción, por ejemplo, pasa por editar el fichero functions.php de tu template y añadir el siguiente código:


function remove_menus () {
global $menu;
$restricted = array(__('Dashboard'), __('Posts'), __('Media'), __('Links'), __('Pages'), __('Appearance'), __('Tools'), __('Users'), __('Settings'), __('Comments'), __('Plugins'));
end ($menu);
while (prev($menu)){
$value = explode(' ',$menu[key($menu)][0]);
if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);}
}
}
add_action('admin_menu', 'remove_menus');

Lo que conseguimos en este caso es ocultar los enlaces al Escritorio, Posts-Entradas, Multimedia, Enlaces… en nuestra lista de opciones de menú en el panel de administración.

Por ejemplo, para evitar que el usuario pueda acceder a según que menús de administración podemos hacer que solo se muestren los Post, Media y Pages eliminando éstas de la variable $restricted como se indica en este ejemplo:

$restricted = array(__('Dashboard'), __('Links'), __('Appearance'), __('Tools'), __('Users'), __('Settings'), __('Comments'), __('Plugins'));

De esta manera al hacer login en el panel de administración solamente podrá modifcar los artículos, archivos de la galeria de archivos multimedia y las páginas.

Esto se utiliza mucho en entornos donde damos acceso al usuario/cliente al panel de control de administración, pero nosotros como webmasters, no queremos que acceda a otras zonas, evitando que pueda cambiar opciones de configuración que puedan afectar al rendimiento, comportamiento o diseño de la web.