• Добрый день!

    Попытался сегодня заменить очень старую, много лет не обновлявшуюся тему F2 на Twenty Twelve, но столкнулся вот с какой проблемой. Тема Twenty Twelve установилась корректно, но если вызвать её на предварительный просмотр, то появляется белый экран с сообщением об ошибке:

    Fatal error: require(): Failed opening required ‘/home2/ichaelv3/public_html/wp-content/themes/twentytwelve/inc/template-tags.php’ (include_path=’/home2/ichaelv3/public_html/wp-content/plugins/openid/lib:.:/usr/php/56/usr/lib64:/usr/php/56/usr/share/pear’) in /home2/ichaelv3/public_html/wp-content/themes/f2/functions.php on line 32

    Ошибка не критичная, админка и сайт продолжают работать, недоступен только предварительный просмотр темы. Но если нажать на смену темы, то тут уже сайт и админка вообще перестают работать, вместо всех страниц появляется сообщение об ошибке, процитированное выше. Проверил по диспетчеру файлов cPanel — в строке 32 файла /wp-content/themes/f2/functions.php содержится команда require( get_template_directory() . '/inc/template-tags.php' );. Если сопоставить этот код с сообщением об ошибке, то получается, что сценарий /wp-content/themes/f2/functions.php пытался загрузить файл /wp-content/themes/twentytwelve/inc/template-tags.php, а в теме Twenty Twelve такого файла нет. При этом в таблице wp_options базы данных параметры template и stylesheet имели значение twentytwelve, то есть тема действительно переключилась; почему при этом продолжал запускаться файл /wp-content/themes/f2/functions.php, для меня остаётся загадкой.

    Работоспособность сайта восстановил, изменив через phpMyAdmin значения тех самых параметров template и stylesheet обратно на f2, но очень хотелось бы узнать, из-за чего так получается, а главное — как мне всё-таки сменить тему?

    Попробовал интереса ради установить тему Twenty Seventeen — при попытке вызвать её на предварительный просмотр появляется аналогичное сообщение об ошибке, но в теме Twenty Seventeen есть файл template-tags.php, поэтому ошибка возникает не в 32-й, а в 37-й строке файла /wp-content/themes/f2/functions.php, где содержится команда require( get_template_directory() . '/inc/theme-options/theme-options.php' );. То есть пока впечатление такое, что тема F2 в принципе блокирует смену темы, независимо от того, на какую тему я буду пытаться её заменить. Поэтому тем более буду признателен за любую дополнительную информацию 🙂

    • Тема изменена 6 лет, 4 месяца назад пользователем amdir.

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 5 ответов — с 1 по 5 (всего 5)
  • Модератор Yui

    (@fierevere)

    永子

    а если сменить через удаление темы f2?
    удалить по ftp или через файлменеджер хостинга ее папку (бэкап сохраните чтобы вернуть, если что)

    при удалении текущей темы wordpress автоматически переключается на одну из установленных тем twenty *

    Помогает, но не до конца. Если удалить каталог с темой f2 (я его просто перемещал на время из каталога ~/public_html/wp-content/themes в корневой каталог учётной записи), то админка сайта остаётся доступной, но на месте самого сайта появляется пустой экран, никаких сообщений об ошибке, даже в режиме просмотра исходного кода ни одной строки на HTML не отображается. В админке при этом активной темой оказывается Twenty Seventeen, но настройки темы недоступны, более того — из раздела «Внешний вид» вообще исчезла часть вкладок, например, «Виджеты» или «Меню». Попробовал переключить тему с Twenty Seventeen на Twenty Twelve — то же самое, тема переключилась, но настройки недоступны и вместо сайта белый экран. Когда вернул каталог f2 обратно в wp-content/themes и переключил тему через phpMyAdmin, сайт заработал как раньше. В журналах ошибок за сегодняшний день вообще ничего не отложилось.

    Тема Twenty Twelve установилась корректно, но если вызвать её на предварительный просмотр

    Кроме «установить» нужно ещё и «активировать».
    По ошибке же видно что виновата древняя тема.

    и вместо сайта белый экран

    Значит есть ещё ошибки. См https://codex.wordpress.org/%D0%A7%D0%90%D0%92%D0%9E/%D0%91%D0%B5%D0%BB%D1%8B%D0%B9_%D1%8D%D0%BA%D1%80%D0%B0%D0%BD

    Нашёл! Это была моя ошибка, раньше надо было заглянуть в wp-config.php. Всё оказалось довольно просто: где-то, видимо, в учебнике по WordPress, была рекомендация прописать в wp-config.php точный адрес каталога с темой, чтобы страницы загружались быстрее; я этой рекомендации последовал, а поскольку это было несколько лет назад, то успел об этом напрочь забыть. Только сегодня заметил.

    Прошу прощения за беспокойство. Даже не знаю, стоит ли сохранять эту дискуссию, но вдруг ещё кто-нибудь наступит на те же грабли? 😉

    где-то, видимо, в учебнике по WordPress, была рекомендация прописать в wp-config.php точный адрес каталога с темой, чтобы страницы загружались быстрее

    Не читайте больше такие «учебники» 🙂
    Есть правильный «учебник»: https://codex.wordpress.org/Editing_wp-config.php и там такого бреда нет.

    Даже не знаю, стоит ли сохранять эту дискуссию, но вдруг ещё кто-нибудь наступит на те же грабли?

    Именно поэтому на форумах никогда ничего не удаляется (кроме злостных нарушений).

    И спс что поделились источником проблемы (я напр даже о таком никогда не слышал)

Просмотр 5 ответов — с 1 по 5 (всего 5)
  • Тема «Фатальная ошибка при попытке сменить тему» закрыта для новых ответов.