为什么我的PHP函数代码出现未定义的索引错误

时间:2019-12-12 23:35:04

标签: php wordpress function isset

我什至尝试使用“ isset”,但遗憾的是它不起作用。

function pageBanner($args=NULL){
if(!$args['title']){
    $args['title']=get_the_title();
}

if (!$args['subtitle']){
    $args['subtitle'] = get_field('page_banner_subtitle');
}

if (!$args['photo']){
    if (get_field('page_banner_background_image')){
        $args['photo'] = get_field('page_banner_background_image')['sizes']['pageBanner'];
    }
    else {
        $args['photo']=get_theme_file_uri('images/pages.jpg');
    }
}?>

我不知道if(!$args['title']){ $args['title']=get_the_title();上的问题是否正常,但是字幕和照片未定义索引。

1 个答案:

答案 0 :(得分:1)

尝试这样的事情:

function pageBanner($args = null)
{
    if ($args === null) {
        $args = [];
    }

    if (!isset($args['title'])) {
        $args['title'] = get_the_title();
    }

    if (!isset($args['subtitle'])) {
        $args['subtitle'] = get_field('page_banner_subtitle');
    }

    if (!isset($args['photo'])) {
        $field = get_field('page_banner_background_image');
        if ($field && isset($field['sizes']['pageBanner'])) {
            $args['photo'] = $field['sizes']['pageBanner'];
        } else {
            $args['photo'] = get_theme_file_uri('images/pages.jpg');
        }
    }
}