Базовая тема больше не распознается


Недавно я унаследовал сайт Drupal 7 (7.39), использующий старую версию Omega 4 (beta7) и пользовательскую подтему. Все было хорошо до сегодняшнего утра, когда крон застрял. Он отклеился до того, как я смог приступить к работе, но теперь Drupal больше не распознает базовую тему Omega, поэтому классы и другие переменные темы вставлены неправильно, и на дисплее беспорядок.

Чтобы уточнить,

  • Я много раз очищал все кэши из admin_menu и Devel (мы находимся на общий хостинг и нет доступа к оболочке/Drush).
  • В отчете о состоянии или сторожевом псе нет необычных ошибок или предупреждений.
  • Никаких изменений конфигурации в Drupal или на сервере, на котором работают PHP 5.5.29 и Percona 5.6.28, не было.
  • Не установлено никаких модулей, связанных с Omega или другими темами, кроме темы CiviCRM, которую я отключил безрезультатно.
  • Файлы все еще присутствуют в /сайтах/всех/темах/omega и /сайты/все/темы/наша тема, и, насколько я могу судить, полностью нетронуты (никаких изменений в размерах файлов или отметках даты, насколько у нас есть снимки).
  • Поскольку это общий хостинг, все файлы принадлежат пользователю учетной записи с разрешениями, установленными на 775. Опять же, это не то, что изменилось.
  • подтемы (как Ohm, связанная подтема, так и наша пользовательская) отображаются на экране /admin/внешний вид просто отлично, но сама Omega этого не делает.
  • Я могу добраться до экраны настроек для подтем, например /администратор/внешний вид/настройки/ом, просто отлично. Но просмотр /администратор/внешний вид/настройки/omega возвращает ошибку Отказа в доступе.
  • Но Drupal должен знать, что Omega установлена, потому что, когда я смотрю на /admin/отчеты/обновления или /admin/внешний вид/обновление, он отображается в списке тем с доступными обновлениями.
  • Ожидающие обновления для Omega не связаны с безопасностью, поэтому я не думаю, что это ситуация, когда он отключается или запрещено механизмом безопасности

Естественно, время не могло быть хуже для того, чтобы это произошло с клиентом, поэтому я был бы признателен за любые идеи относительно того, что может привести к тому, что Drupal "потеряет" подобную тему, или как мы могли бы освежить его память.

Author: choster, 2016-01-28

1 answers

Я запустил _system_rebuild_theme_data(), но это, похоже, не улучшило ситуацию, поэтому я проверил статус темы в таблице system; базовая тема была отключена. Там лежала загвоздка.

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

Поскольку Omega была отключена, она не предоставляла правильные переменные темы для нашей пользовательской подтемы (хотя.tpl.php файлы, похоже, были найдены), таким образом, сломанный дисплей сегодня утром.

Поскольку Omega 4 предназначена для сборки и настройки программно, возможно, базовая тема скрыта по умолчанию, и не было возможности включить ее из пользовательского интерфейса. Мне пришлось отредактировать файл .info, чтобы он больше не был скрыт, и в этот момент он появился в /admin/как обычно.

Если бы я мог использовать Drush на этом сервере, все это не было бы проблемой. Большое спасибо @Clive за его быстрый ответ и предложения.

 0
Author: choster, 2017-04-13 12:46:58