Si utilizas WordPress para tu web o blog y te sueles encontrar errores al configurar los menús en la zona de administración del escritorio… ESTÁS DE ENHORABUENA!!!
Cansado de encontrarme continuamente con estos errores busqué la solución y a continuación os la muestro para que vosotros mismos podáis reparar estos molestos problemas.
PROBLEMA:
Warning: Invalid argument supplied for foreach() in /home/······/······/wp-admin/includes/menu.php on line xx
SOLUCION:
Edita el contenido del archivo … /wp-admin/includes/menu.php. Al principio del documento debes añadir el código marcado en color verde…
* Build Administration Menu.
*
* @package WordPress
* @subpackage Administration
*/
error_reporting(E_ERROR);
if ( is_network_admin() ) {
Esto evitará que el intérprete PHP muestre estos avisos innecesarios.
PROBLEMA:
Fatal error: [] operator not supported for strings in /home/······/······/wp-admin/includes/plugin.php on line xx
SOLUCION:
Edita el contenido del archivo … /wp-admin/includes/plugin.php. Cerca de la línea 1095 (puede variar según la versión de WordPress) debes añadir el código marcado en color verde…
}
$new_menu = array( $menu_title, $capability, $menu_slug, $page_title, ‘menu-top ‘ . $icon_class . $hookname, $hookname, $icon_url );
if(!is_array($menu)){$menu=array();}
if ( null === $position ) {
$menu[] = $new_menu;
Esto corregirá el bug por no estar definido el array $menu.
(las actualizaciones de WordPress pueden solapar o reescribir estos archivos de sistema por lo que después de realizarlas es aconsejable revisar si estos cambios se mantienen activos)
Espero que os sea de tanta utilidad como lo es para mí.
Rafa.