未定义索引:inc_social_context

Undefined index: inc_social_context

我正在处理这个 wordpress 插件设置页面,当我得到这个 Undefined index: inc_social_context[=13 时,我将调试模式设置为 true =]

我不知道我做错了什么,这是我的代码:

public function kankozfgp_post_type_display_html ( $content ){
$kankozfgp_options_global = get_option( 'kankozfgp_option_name' );
$kankozfgp_inc_social_context = esc_attr( $kankozfgp_options_global['inc_social_context'] );

if ( isset( $kankozfgp_inc_social_context ) && !empty( $kankozfgp_inc_social_context ) ) {
            $kankozfgp_inc_social_context = "true";
        } else{
            $kankozfgp_inc_social_context = "false";
        }
}

这里是回调函数

public function kankozfgp_inc_social_context_cb( $args ) {      
    $kankozfgp_options_global = get_option( 'kankozfgp_option_name' );
    ?>

    <input type="checkbox" id="<?php echo esc_attr( $args['label_for'] ); ?>" 
    data-custom="<?php echo esc_attr( $args['kankozfgp_custom_data'] ); ?>"
    name="kankozfgp_option_name[<?php echo esc_attr( $args['label_for'] ); ?>]"

    value="1"<?php echo isset( $kankozfgp_options_global[ $args['label_for'] ] ) ? ( checked('1', $kankozfgp_options_global[ $args['label_for'] ] ) ) : ( '' );

 ?>>
</input>

    <?php
}

谢谢。

这是违规行:

$kankozfgp_inc_social_context = esc_attr( $kankozfgp_options_global['inc_social_context'] );

您正在尝试将索引值分配给不存在的变量。

稍后在您的代码中检查该值是否存在:

if ( isset( $kankozfgp_inc_social_context ) && !empty( $kankozfgp_inc_social_context ) ) {
            $kankozfgp_inc_social_context = "true";
        } else{
            $kankozfgp_inc_social_context = "false";
        }
}

但是已经晚了,你需要在分配之前检查一下。

这就是我要做的:

$kankozfgp_inc_social_context = isset( $kankozfgp_options_global['inc_social_context'] ) ? true : false;