PHP更新后WordPress首页出现数组偏移访问警告求助
解决WordPress首页的PHP警告问题
问题原因
PHP版本更新后对变量类型检查更严格,当wp_get_attachment_image_src函数找不到对应ID的图片附件时,会返回false(布尔值),原代码直接尝试访问布尔值的数组下标[0],因此触发警告。
修复代码
将主题文件/htdocs/wp-content/themes/oceanwp-OLD/inc/helpers.php第2452行附近的代码修改为:
// Generate image URL if using ID if ( is_numeric( $bg_img ) ) { $bg_img = wp_get_attachment_image_src( $bg_img, 'full' ); // 先验证返回值是数组再提取图片URL $bg_img = is_array($bg_img) ? $bg_img[0] : null; } $bg_img = $bg_img ? $bg_img : null;
说明
- 新增
is_array($bg_img)判断,确保仅当函数返回有效图片数组时,才提取第一个元素(图片URL);若返回false则将$bg_img设为null,避免类型错误。 - 修改前建议先备份该文件,防止操作失误影响网站。修改后刷新首页,警告即可消除。
内容的提问来源于stack exchange,提问作者Emerica11
相关产品推荐
相关产品推荐

