使用 WordPress 高级自定义字段时“url”的字符串偏移量非法

Yas*_*avi 3 php wordpress advanced-custom-fields

我正在将 Bootstrap 模板转换为 WordPress 主题。

对于自定义字段,我使用插件Advanced Custom Fields。问题是当我尝试借助高级自定义字段添加图像时,出现以下错误:

警告:第 31 行 C:\wamp64\www\my-site\wordpress\wp-content\themes\bootstraptowordpress\page-home.php 中存在非法字符串偏移“url”

但是,当我通过此插件添加文本时,它没有显示任何错误

除了 ACF 之外,我没有安装其他插件。

这是我的代码:

$home_page_logo = get_field('home_page_logo');

<div class="front_logo">

   <?php if( !empty($home_page_logo)): ?>

      <img src="<?php echo $home_page_logo['url']; ?>" alt="<?php  echo $home_page_logo['alt']; ?>" />

   <?php endif; ?>

 </div>
Run Code Online (Sandbox Code Playgroud)

Tim*_*one 5

在 ACF 中可以通过三种方式返回图像字段(数组、URL 或 ID)。听起来您的字段设置为返回 URL - 它以字符串形式返回。

因此,您需要像这样访问它:

<?php echo $home_page_logo; ?>
Run Code Online (Sandbox Code Playgroud)

而不是这个:

<?php echo $home_page_logo['url']; ?>
Run Code Online (Sandbox Code Playgroud)

或者,您可以在 WordPress 管理员中编辑该字段的设置并将其配置为返回图像数组而不是 URL:

在此输入图像描述

如果它设置为数组选项,您可以url像当前一样访问,以及访问与图像相关的一系列其他数据(例如其宽度和高度、WordPress 附件 ID、标题(如果输入)等)。 )