Joomla 1.0
En Joomla! 1.0.x fue posible determinar si el usuario estaba viendo la primera página utilizando código como este:<?php if ($option == 'com_frontpage' || $option == '') { echo 'Esta es la página principal'; } ?>
Joomla 1.5
Pero en Joomla! 1.5.x el componente com_frontpage ya no está presente. Esta es la forma de lograr el mismo resultado en Joomla! 1.5.x<?php $menu = & JSite::getMenu(); if ($menu->getActive() == $menu->getDefault()) { echo 'Esta es la página principal'; } ?>
Esto funciona mediante la comprobación para ver si el elemento de menú activa actual es el valor predeterminado.
Joomla 2.5 and 3.x series
Hay algunas diferencias en 1.6/1.7/2.5 para evitar errores de normas estrictas. Utilice el siguiente código para un sitio donde todo el contenido está en el mismo idioma:<?php $app = JFactory::getApplication(); $menu = $app->getMenu(); if ($menu->getActive() == $menu->getDefault()) { echo 'Esta es la página principal'; } ?>
Para los sitios multilingües la primera página depende del idioma seleccionado en ese momento, por lo que tendrá que utilizar un código como este:
<?php $app = JFactory::getApplication(); $menu = $app->getMenu(); if ($menu->getActive() == $menu->getDefault( 'en-GB' )) { echo 'Esta es la página principal'; } elseif ($menu->getActive() == $menu->getDefault( 'fr-FR' )) { echo 'Accueil';//Bienvenido } ?>
Para los sitios multilingües aussi podría ser necesario para mostrar un código / html específico para todas las páginas de inicio por defecto.
<?php $app = JFactory::getApplication(); $menu = $app->getMenu(); $lang = JFactory::getLanguage(); if ($menu->getActive() == $menu->getDefault($lang->getTag())) { echo 'Esta es la página principal'; } else { echo 'Accueil';//Bienvenido } ?>