Решение проблемы с хлебными крошками в теме Flatsome при PHP 8
Ошибка в хлебных крошках связана с некорректной обработкой значения $page_parent в файле темы. Причина - функция get_page_by_path() может вернуть null, если страница не найдена, а код пытается обратиться к свойству ID у null. Это вызывает предупреждение в PHP 8.
Шаги для исправления
- Откройте файл
/wp-content/themes/flatsome/inc/structure/structure-portfolio.php. - Найдите строку 55 (или соответствующее условие).
- Замените текущий код на следующий:
if (flatsome_option('featured_items_page') && !is_page()) { $page_parent = get_page_by_path(flatsome_option('featured_items_page')); if ($page_parent !== null && isset($page_parent->ID)) { echo '' . get_the_title($page_parent->ID) . ''; echo '/'; } } - Сохраните изменения и проверьте работу хлебных крошек.
Пояснение
- Добавлена проверка
$page_parent !== null && isset($page_parent->ID)- если страница не найдена или ID отсутствует, код не выполняется. - Это предотвращает обращение к свойству несуществующего объекта и устраняет предупреждение.
После исправления хлебные крошки будут отображаться корректно: Главная / Наши сотрудники / ФИО. Если ошибка сохраняется, убедитесь, что в настройках темы (Flatsome → Portfolio) указано правильное значение для поля «Страница портфолио».