Home Blog

Blog

Cómo resolver el problema del mainmenu desaparecido en Joomla! al actualizar a PHP 5

por María Luisa Bermejo
 
Cuando nos actualizan la versión de PHP en nuestro servidor, puede suceder que desaparezca el menú principal en el frontend de nuestra web Joomla! 1.5.*. También puede ocurrir que el gestor del mainmenu se nos muestre vacío, que no aparezcan los ítems en el backend. Esto es debido a ciertas incompatibilidades en algunas funciones.
Tenemos dos posibilidades a la hora de solucionar este problema. Podemos actualizar a una versión superior de Joomla! o editar tres archivos en el servidor. Son los siguientes:
 
/libraries/joomla/html/html/grid.php
 
Los cambios a realizar son:
 
function access( &$row, $i, $archived = NULL )
por
function access( $row, $i, $archived = NULL )
-----
function checkedOut( &$row, $i, $identifier = 'id' )
por
function checkedOut( $row, $i, $identifier = 'id' )
-----
function published( &$row, $i, $imgY = 'tick.png', $imgX =
'publish_x.png', $prefix='' )
por
function published( $row, $i, $imgY = 'tick.png', $imgX =
'publish_x.png', $prefix='' )
por
function _checkedOut( &$row, $overlib = 1 )
por
function _checkedOut( $row, $overlib = 1 )

/libraries/joomla/html/html/menu.php
 
Cambios:
 
$list = JHTMLMenu::TreeRecurse( intval( $mitems[0]->parent ), '', array(),& $children, 9999, 0, 0 );
Por
$list = JHTMLMenu::TreeRecurse( intval( $mitems[0]->parent ), '', array(), $children, 9999, 0, 0 );

/modules/mod_mainmenu/helper.php
 
Cambios:
 
function buildXML(&$params)
por
function buildXML($params)

Si el problema consiste únicamente en que han desaparecido los items del menú principal en el gestor del mainmenu, solamente es necesario retocar el segundo archivo, el menu.php.
 
 

Actualizado (Martes, 10 de Julio de 2012 10:50)