Ошибка, иногда всплывает:
Warning: array_pop() [function.array-pop]: The argument should be an array в функции theme551_preprocess_html() (строка 72 в файле public_html/sites/all/themes/theme551/template.php).
Вот эта строчка №72
array_pop($body_classes); // Remove 'section-node'
Как можно избавиться от нее?
Вложение | Размер |
---|---|
template.rar | 2.37 КБ |
template.txt | 6.34 КБ |
Комментарии
array_pop((array) $body_classes);
Fatal error: Only variables can be passed by reference in /public_html/sites/all/themes/theme551/template.php on line 72
Заменил в строчке №72
array_pop($body_classes);
на
array_pop((array) $body_classes);
Теперь всплывает ошибка:
«Fatal error: Only variables can be passed by reference in /public_html/sites/all/themes/theme551/template.php on line 72»
<?php if(is_array($body_classes))
array_pop($body_classes); ?>
Shok211, спасибо за помощь
Теперь, иногда, всплывает другая ошибка
«Warning: array_pop() [function.array-pop]: The argument should be an array в функции theme551_preprocess_html() (строка 80 в файле public_html/sites/all/themes/theme551/template.php).»
И, чаще, вот эта:
«Notice: Undefined variable: body_classes в функции theme551_preprocess_html() (строка 72 в файле /public_html/sites/all/themes/theme551/template.php).»
Почему эти ошибки, то есть, то нету?
За что вообще отвечают эти строчки? Может удалить эту функцию или у меня вообще ничего не будет работать?
Up
На сайтах рекомендуют написать в index.php или в .htaccess
php_value error_reporting "E_ALL & ~E_NOTICE" или error_reporting(E_ALL ^ E_NOTICE);
Но ни то, ни другое не помогает
Подскажите, что мне делать с этой ошибкой
А где решение?? что помогло??
Можно попробовать ещё так:
array_pop($body_classes);
Спасибо вроде помогло
Сообщение перестало вываливаться на какое то время... потом опять появилось...
Подскажите как еще можно решить проблему???
Жирным выделена проблемная строка
ps сорри тег code в редакторе на д.ру перестал работать
function theme551_preprocess_html(&$vars) {
if (module_exists('rdf')) {
$vars['doctype'] = '' . "\n";
$vars['rdf']->version = 'version="HTML+RDFa 1.1"';
$vars['rdf']->namespaces = $vars['rdf_namespaces'];
$vars['rdf']->profile = ' profile="' . $vars['grddl_profile'] . '"';
} else {
$vars['doctype'] = '' . "\n";
$vars['rdf']->version = '';
$vars['rdf']->namespaces = '';
$vars['rdf']->profile = '';
}
$vars['classes_array'][] = 'body';
/* Since menu is rendered in preprocess_page we need to detect it here to add body classes */
$has_main_menu = theme_get_setting('toggle_main_menu');
$has_secondary_menu = theme_get_setting('toggle_secondary_menu');
// Adding classes whether #navigation is here or not
if ($has_main_menu or $has_secondary_menu) {
$vars['classes_array'][] = 'with-navigation';
}
if ($has_secondary_menu) {
$vars['classes_array'][] = 'with-subnav';
}
/* Add extra classes to body for advanced theming */
if ($vars['is_admin']) {
$vars['classes_array'][] = 'admin';
}
if (!$vars['is_front']) {
// Add unique classes for each page and website section
$path = drupal_get_path_alias($_GET['q']);
list($section, ) = explode('/', $path, 2);
$vars['classes_array'][] = theme551_id_safe('page-'. $path);
$vars['classes_array'][] = theme551_id_safe('section-'. $section);
//$vars['template_files'][] = "page-section-" . $section;
if (arg(0) == 'node') {
if (arg(1) == 'add') {
if ($section == 'node') {
array_pop($body_classes); // Remove 'section-node'
}
$body_classes[] = 'section-node-add'; // Add 'section-node-add'
}
elseif (is_numeric(arg(1)) && (arg(2) == 'edit' || arg(2) == 'delete')) {
if ($section == 'node') {
$body_classes = (array) $body_classes;
array_pop($body_classes);
//array_pop($body_classes); // Remove 'section-node'
}
$body_classes[] = 'section-node-'. arg(2); // Add 'section-node-edit' or 'section-node-delete'
}
}
}
# krumo($vars);
}