У меня появились вот такие ошибки:
Warning: Invalid argument supplied for foreach() in C:\OpenServer\domains\TITAN\wp-content\themes\titan\main-page.php on line 185 и т.д.
Дело в том, что почти в самом верху у меня есть секция в которой выводятся последние работы из портфолио. Для сортировки используется изотоп и так как я не особо разбирался в таксономиях. Я эту секцию пропустил.
Продолжил делать другие секции.
Использовал плагин
carbon fields для добавления произвольных полей в кастомные записи.
Далее я вытягиваю данные из нужных мне произвольных полей и выводу всё это ввёрстке:<div class="row">
<?php $tm_list = carbon_get_the_post_meta('tm_select', 'association');
?>
<?php foreach ($tm_list as $item): ?>
<div class="mb-sm-20 wow fadeInUp col-sm-6 col-md-3" onclick="wow fadeInUp">
<div class="team-item">
<div class="team-image"><img
src="<?php echo carbon_get_post_meta($item['id'], 'team_img'); ?>"
alt="Member Photo"/>
<div class="team-detail">
<h5 class="font-alt"><?php echo carbon_get_post_meta($item['id'], 'team_title'); ?></h5>
<p class="font-serif"><?php echo carbon_get_post_meta($item['id'], 'team_desc'); ?></p>
<div class="team-social">
<?php $st = carbon_get_post_meta($item['id'], 'team_list', 'complex'); ?>
<?php foreach ($st as $item2): ?>
<a href="<?php echo $item2['team_link']; ?>"><i class="<?php echo $item2['team_icon']; ?>"></i></a>
<?php endforeach; ?>
</div>
</div>
</div>
<div class="team-descr font-alt">
<div class="team-name"><?php echo carbon_get_post_meta($item['id'], 'team_name'); ?></div>
<div class="team-role"><?php echo carbon_get_post_meta($item['id'], 'team_pos'); ?></div>
</div>
</div>
</div>
<?php endforeach; ?>
</div>
Затем я разобрался с таксономиями и вернулся к секции где выводится последние 6 работ из портфолио
Для вывода этих записей я самостоятельно
создал custom_post_type и вывожу их:
<ul class="works-grid works-grid-gut works-grid-3 works-hover-w" id="works-grid">
<?php
$args = [
'post_type' => 'portfolio_post_type',
];
$works = new WP_Query($args);
?>
<?php if($works->have_posts()):?>
<?php while ($works->have_posts()):?>
<?php $works->the_post();?>
<li class="work-item illustration webdesign">
<a href="<?php echo get_permalink(); ?>">
<div class="work-image"><img src="<?php echo get_the_post_thumbnail(); ?>" alt="Portfolio Item"/></div>
<div class="work-caption font-alt">
<h3 class="work-title"><?php echo get_the_title();?></h3>
<div class="work-descr"><?php echo get_the_excerpt(); ?></div>
</div>
</a></li>
<?php endwhile;?>
<?php endif;?>
</ul>
Проблема в том что после того как я добавил код для вывода записей последних работ портфолио. У меня появились ошибки:
<b>Warning: Invalid argument supplied for foreach() in C:\OpenServer\domains\TITAN\wp-content\themes\titan\main-page.php on line 185 и т.д.</b>
Он ругается на
foreach потому что после добавления кода который выводит последние записи из порфолио
В переменной:<?php $tm_list = carbon_get_the_post_meta('tm_select', 'association');
Образуется пустота!!! т.е. если выполнить
var_dump($tm_list); то выдаст
string 0 а если убрать код который выводит последние работы в портфолио в переменной вновь есть данные О_о
такого вида:
array(4) {
[0]=>
array(3) {
["id"]=>
string(2) "24"
["type"]=>
string(4) "post"
["post_type"]=>
string(14) "team_post_type"
}
Я не понимаю где я ошибся. Почему после добавления кода который выводит работы из портфолио у меня вываливается эта ошибка.