Veteasabertu

Mostrar u ocultar una capa o un módulo solo en la página de inicio de un Joomla!

31 de Octubre 2013
Mostrar u ocultar una capa o un módulo sólo en la página de inicio de un Joomla!

Si trabajas con Joomla!, no es de extrañar que, pese a la flexibilidad de la herramienta, haya cosas que tengamos programar nosotros. Ya sea porque tenemos un tema que queremos personalizar un poco más o sea porque el tema lo estamos haciendo nosotros, puede interesarnos ser más selectivos a la hora de mostrar contenido o no en la página de inicio.

Lo que vamos a ver es cómo ocultar (o mostrar) una capa, un módulo o cualquier otro tipo de contenido que queramos sólo en la home de nuestra web, sin afectar al resto de las páginas. Como actualmente existen varias versiones de Joomla!, vamos a ver cómo se puede hacer en cada una de ellas.

Antes de nada, tendremos que encontrar el archivo que define la estructura de la plantilla. Éste se encontrará normalmente dentro de la carpeta templates, en el directorio del tema que actualmente tengamos activo, será el archivo index.php.

Una vez encontrado, iremos a la zona del código que queremos ocultar en la página de inicio y usaremos los siguientes condicionales, dependiendo de la versión que se trate.

Joomla! 1.0

Joomla! 1.5

Joomla! 2.5 y Joomla! 3.0 en adelante

Estos condicionales, lo que hacen es mostrar el contenido que se encuentra dentro sólo si el usuario no está viendo la página de inicio del Joomla!, es decir, que si la se está viendo la home, no se mostrará lo que hay dentro.

Esta funcionalidad sirve también para lo contrario si queremos, para mostrar un determinado contenido sólo en la portada de nuestra web. Para hacerlo, basta con cambiar el operador de desigualdad != por el de igualdad ==.

Para más información puedes ver la documentación técnica de Joomla! sobre cómo determinar si un usuario está viendo la página de inicio, de gran utilidad cuando tenemos contenido multilenguaje.

Publicado por Jesús Tovar

Categorías: Joomla, Programación

Etiquetas:

6 comentarios

  1. lo he intentado ocultar desde el backend, no programando pero bueno si me das la opcion de programar me sirve igual, slds

    • Jesús Tovar dice:

      Si lo has intentado desde el backend y la plantilla te ignora, entiendo entonces que el menú principal está vinculado a un módulo dinámico de Joomla en lugar de ser fijo. Mal asunto, ¿no dispones de una dirección de soporte técnico de la plantilla?

      Programando nunca se me ha terciado hacerlo, de modo que no te puedo dar un código testeado que funcione, pero sí que te puedo dar una aproximación si te sirve.

      Lo que tendrías que hacer en este caso es buscar el archivo de la plantilla que carga el módulo y meterlo en un condicional, que compare la url o el id del elemento de menú actual, con el que quieres ocultar. Debería ser algo así:

      De este modo sólo se mostrará el menú si no coincide con ninguno de los “IDdetusmenus” (ahí los especificarías). No es la mejor fórmula para hacerlo ya que tendrás que especificar uno a uno los ID, pero puede que te sirva. Eso sí, como te decía, no lo he probado nunca, pero es un buen punto de partida.

      Un saludo.

  2. Hola yo quiero ocultar el menu principal de la plantilla en un grupo de paginas a las q se accedera desde otro menú, ya he tratado de modificar el modulo al q esta asociado el menu principal para q no se visualice en esas paginas pero no me hace nada….me puede ayudar??

  3. Anónimo dice:

    Buen dia, soy un alumno que esta aprendiendo Joomla, y aun no encuentro en donde poner el codigo que menciona, le agradeceria si me pudiera ayudar… De antemano muchas gracias.

Deja un comentario

Este sitio web utiliza cookies para mejorar la experiencia de usuario, si continúas navegando estás dando tu consentimiento. Para más información pincha aquí.

ACEPTAR
Aviso de cookies