Warning: foreach() argument must be of type array|object
-
После обновления до Php 8.0 WordPress начал ругаться на кастомный код в одном из файлов темы, который отображает теги таксономии в заголовке. Сам код рабочий, но на некоторых страницах с ним возникает ошибка прямо текстом на самой странице даже без включённого debug.
Ошибка вот такая:
WARNING: FOREACH() ARGUMENT MUST BE OF TYPE ARRAY|OBJECT, BOOL GIVEN IN /VAR/WWW/U0998617/DATA/WWW/STRATEGYCON.RU/WP-CONTENT/THEMES/HUEMAN-CHILD-2/PARTS/PAGE-TITLE.PHP ON LINE 28Сам код:
<!--теги статуса начало--> <?php $post_type = get_post_type(); if ($post_type == 'page') { $terms = get_the_terms( get_the_ID(), 'status_of_game' ); $term_links = array(); foreach ( $terms as $term ) { $term_links[] = '<a href="' . get_term_link( $term ) . '" class="status_of_game-' . $term->slug . '">' . $term->name . '</a>'; } echo implode("/ ", $term_links ); } ?> <!--теги статуса конец-->
Где 28 строка это
foreach ( $terms as $term ) {
Подскажите, пожалуйста, как поправить код, чтобы убрать предупреждение. Я сам в Php совсем не разбираюсь.
Просмотр 3 ответов — с 1 по 3 (всего 3)
Просмотр 3 ответов — с 1 по 3 (всего 3)
- Тема «Warning: foreach() argument must be of type array|object» закрыта для новых ответов.