I've been working on developing my own theme and had to make a few custom blocks with ACF using my Laravel Sage environment.
My objective is to retrieve a list of text from a repeater object. (which successfully works, but the error is still displayed).
So the code that is throwing that error is as follows:
page.blade.php:
@php
$tv_lists = [];
while (have_rows('tv_lists')) {
the_row();
$tv_lists[] = [
'tv_list' => get_sub_field('tv_list'),
];
}
@endphp
@if(get_field('tv_lists'))
<div class="tv-lists col-12 col-md-8 col-lg-9 block-image">
@foreach($tv_lists as $tv_list)
@if(!empty($tv_list['tv_list']))
<div class="tv-list quote-content">
<a class="tv-list-text">{{ $tv_list['tv_list'] }}</a>
</div>
@endif
@endforeach
</div>
@endif
And then the PHP code that's responsible for creating the repeater blocks is as follows in page.php:
->addRepeater('tv_lists', [
'conditional_logic' => [[['field' => 'links_type', 'operator' => '==', 'value' => 'list']]],
'label' => 'TV Lists',
'layout' => 'block',
])
->addText('tv_list', [
'label' => 'TV List',
])
->endRepeater()
Thank you in advance to anyone that's taking the time to read through this.
You need an if
statement before the while
so you want to do something like this.
@php
$tv_lists = [];
if (have_rows('tv_lists'){
while (have_rows('tv_lists')) {
the_row();
$tv_lists[] = [
'tv_list' => get_sub_field('tv_list'),
];
}
}
@endphp