Решение проблемы с хлебными крошками в теме Flatsome при PHP 8

Ошибка в хлебных крошках связана с некорректной обработкой значения $page_parent в файле темы. Причина - функция get_page_by_path() может вернуть null, если страница не найдена, а код пытается обратиться к свойству ID у null. Это вызывает предупреждение в PHP 8.

Шаги для исправления

  1. Откройте файл /wp-content/themes/flatsome/inc/structure/structure-portfolio.php.
  2. Найдите строку 55 (или соответствующее условие).
  3. Замените текущий код на следующий:
    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 '/';
        }
    }
  4. Сохраните изменения и проверьте работу хлебных крошек.

Пояснение

  • Добавлена проверка $page_parent !== null && isset($page_parent->ID) - если страница не найдена или ID отсутствует, код не выполняется.
  • Это предотвращает обращение к свойству несуществующего объекта и устраняет предупреждение.

После исправления хлебные крошки будут отображаться корректно: Главная / Наши сотрудники / ФИО. Если ошибка сохраняется, убедитесь, что в настройках темы (Flatsome → Portfolio) указано правильное значение для поля «Страница портфолио».