这是在管理区域中发现的错误:
注意:未定义的索引:admin_menu_admin_menu_output_alter()中的菜单 (第612行) /var/www/sites/all/modules/admin_menu/admin_menu.module)。
警告:为for中的foreach()提供的参数无效 admin_menu_admin_menu_output_alter()(第612行) /var/www/sites/all/modules/admin_menu/admin_menu.module)。
代码是:
/**
* Implements hook_admin_menu_output_alter().
*/
function admin_menu_admin_menu_output_alter(&$content) {
foreach ($content['menu'] as $key => $link) {
// Move local tasks on 'admin' into icon menu.
if ($key == 'admin/tasks' || $key == 'admin/index') {
$content['icon']['icon'][$key] = $link;
unset($content['menu'][$key]);
}
}
}
Foreach是第612行
此代码中的错误是什么?
提前致谢。
答案 0 :(得分:2)
如错误所示,$content['menu']
似乎未定义,但它应该是一个数组,因为您尝试在其上使用foreach
。因此,在使用它之前,您需要执行类似的操作:
$content['menu'] = array('value1', 'value2');
答案 1 :(得分:1)
function admin_menu_admin_menu_output_alter(&$content) {
// Check if index menu is defined in $content and is array
if( !isset($content['menu']) || !is_array($content['menu']) )
return;
foreach ($content['menu'] as $key => $link) {
// Move local tasks on 'admin' into icon menu.
if ($key == 'admin/tasks' || $key == 'admin/index') {
$content['icon']['icon'][$key] = $link;
unset($content['menu'][$key]);
}
}
}