Помогите Invalid argument supplied for foreach()

Главные вкладки

Аватар пользователя blacklife blacklife 21 февраля 2012 в 21:05

Всем привет!
Пользуюсь 6-м друпалом. Собственно начала вылазить ошибка:

«warning: Invalid argument supplied for foreach() in W:\home\drup\www\includes\theme.inc on line 497.
warning: Invalid argument supplied for foreach() in W:\home\drup\www\includes\theme.inc on line 502.»

Причем никаких модулей не ставил. Где-то уже читал, что нужно сменить кодировку этого файла из ошибки на utf-8 без bom (не помогло). Тоже самое пробовал с W:\home\drup\www\themes\garland\garland.info

<?php
    
foreach ($themes as $theme) {
      foreach (
$theme->info['stylesheets'] as $media => $stylesheets) {    !!!! это 497 строка
        
foreach ($stylesheets as $stylesheet => $path) {
          
$theme->stylesheets[$media][$stylesheet] = $path;
        }
      }
      foreach (
$theme->info['scripts'] as $script => $path) {  !!! а это 502
        
if (file_exists($path)) {
          
$theme->scripts[$script] = $path;
        }
      }
?>

Помогите пожалуйста решить проблему

Комментарии

Аватар пользователя Shok211 Shok211 21 февраля 2012 в 21:10

Лень разбираться попробуй так

 if (is_array($theme->info['stylesheets']))
   foreach ($theme->info['stylesheets'] as $media => $stylesheets) { bla bla bla }
 if (is_array($theme->info['scripts'))
   foreach ($theme->info['scripts'] as $script => $path) { bla bla bla }
Аватар пользователя blacklife blacklife 21 февраля 2012 в 22:49

Оказалось, что это было из-за недоделаной темы (как-то пытался свою создать, сделал папку и воткнул туда template.php & mytheme.info), но ошибка выскачила только через несколько дней.
Папку с темой удалил и все стало на свои места.
Теперь стало страшно свою тему делать Smile