Пропадают все блоки и области при очистке кеша

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

Аватар пользователя Hinikato Hinikato 5 февраля 2009 в 14:29

Привет.
У меня такая проблема. В моем модуле есть такой код, который создает блок:

/**
 * hook_block
 */

function teza_block($op = 'list', $delta = 0, $edit = array()) {
  switch ($op) {
    case 'view':
      $per_page = variable_get('default_nodes_main', 15);
      $content = '<div id="product_list">' . teza_get_nodes(TEZA_PRODUCT_TYPE, 1, $per_page) . '</div>';
      $content .= theme('pager', NULL, $per_page);
      $block = array(
        'subject' => 'Название блока',
        'content' => $content,
      );
      return $block;
     
    case 'list':
      $blocks = array(
        0 => array(
          'info'   => 'Список товаров',
          'cache'  => BLOCK_NO_CACHE,
        ),    
      );
      return $blocks;

    case 'configure':
    case 'save':
      break;
  }
}

Блок этот показывается, все нормально. Но когда обновляется весь кеш системы (например, при нажатии на ссылку обновления всего кеша в модуле devel), пропадают все регионы и блоки в них.

Значит что-то неправильно. После экспериментов установил, что скорее всего проблема как раз в моей функции: когда ее комментирую и обновляю кеш все блоки восстанавливаются. Но функция правильная, вроде ошибки в ней нет. Что не так, я не понимаю.

Уже задолбался искать баг.. Несколько дней убил. Что это может быть??

Комментарии

Аватар пользователя juliv juliv 19 декабря 2009 в 17:11

забавно, у меня такое же сейчас.
пока что вообще не понимаю, почему такое происходит...
версия 6.15

Аватар пользователя juliv juliv 20 декабря 2009 в 21:32

проблема решена.
было из-за того, что название темы совпадало с названием темы из-за чего такой странный конфликт создавался.
изменение имени чего-то одного (проще темы) и проблема устраняется.