微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何解决PHP ACF错误:“尝试访问类型为bool的值的数组偏移量”?

如何解决如何解决PHP ACF错误:“尝试访问类型为bool的值的数组偏移量”?

我一直在开发自己的主题,并且不得不使用Laravel Sage环境使用ACF制作一些自定义块。

我的目标是从转发器对象中检索文本列表。 (可以成功运行,但仍会显示错误)。

因此引发该错误代码如下:

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

然后,负责创建转发器块的PHP代码如下在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()

在此先感谢您抽出宝贵时间阅读此书。

解决方法

if之前,您需要一个while语句

所以你想做这样的事情。

@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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。