@ilyaGor

Notice: Undefined property: stdClass. в чём проблема?

Переехали на новый хостинг и после этого возникла проблема на сайте с функцией "Купить в один клик". Причём на главном домене всё ок работает, а на всех поддоменах окно открывается с таким текстом Notice: Undefined property: stdClass::$stars in /var/www/u11111/data/www/сайт.ru/wp-content/themes/тема/functions.php on line 2232.

$item_structure = '
		<div class="large-product-item">
			<div class="item-content">
				<div class="info">
					<a href="' . $item_link . '" class="image">' . $item_image . '</a>
					<div class="content">
						<a href="' . $item_link . '" class="title">' . $item_title . '</a>
						<div class="product-meta">
							' . $product->stars . '  // это та самая строка 2232
							<div class="label">' . formate($item_unit_price) . ' ' . CUR . ' / шт.</div>
						</div>
					</div>
				</div>
			</div>
		</div>
		';


Подскажите как решить?
  • Вопрос задан
  • 117 просмотров
Пригласить эксперта
Ответы на вопрос 1
Если версия php >= 7.4, напишите так:
' . ($product->stars ?? 0) . '
Если php < 7.4, тогда так:
' . (isset($product->stars) ? $product->stars : 0) . '

А вообще проблема судя по всему в том, что на старом хостинге нотисы игнорировались на уровне конфигурации php, а на новом — нет.
Если есть доступ к php.ini, можно установить там игнорирование нотисов:
error_reporting = E_ALL & ~E_NOTICE
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы