Senin, 19 April 2010

Perbaiki Menu Item Manager Joomla yang tidak tampil

Aku pake joomla 1.5.14 di PHP 5.3.1, setelah masuk ke administrator, kemudian menu manager, menu tidak tampil. Malah pesan error di bawah ini yang nampil:

Warning: Parameter 4 to JHTMLMenu::treerecurse() expected to be a reference, value given in C:\xampp\htdocs\sbp.net.id\libraries\joomla\html\html.php on line 87

Warning: array_slice() expects parameter 1 to be array, null given in C:\xampp\htdocs\sbp.net.id\administrator\components\com_menus\models\list.php on line 143

Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\sbp.net.id\administrator\components\com_menus\models\list.php on line 147

Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\sbp.net.id\administrator\components\com_menus\views\list\view.php on line 65

Langsung ja aku googling, ternyata masalah tersebut bisa diatasi dengan melakukan patch pada file libraries/joomla/html/html.php

Ubah script di bawah ini:

if (is_callable( array( $className, $func ) ))
{
$args = func_get_args();
array_shift( $args );
return call_user_func_array( array( $className, $func ), $args );
}
else
{
JError::raiseWarning( 0, $className.'::'.$func.' not supported.' );
return false;
}

Menjadi seperti berikut:

if (is_callable( array( $className, $func ) ))  {   $args = func_get_args();   array_shift( $args );   return call_user_func_array( array( $className, $func ), &$args );  }