2013-12-23 41 views
0

我整理我的自定义主题,并在调试模式我在我的评论部分得到一个未定义的变量。这是我的自定义注释部分,显示的未定义变量是aria_reqreqcommenter。这个自定义评论函数在我的函数文件中。我将如何解决这个问题?评论未定义的变量wordpress

// Edit Comment Forms 
function alter_comment_form_fields($fields){ 

    $fields['author'] = '<div class="row"><div class="col-md-4"><p class="comment-form-author">' . '<label for="author">' . __('Name') . '</label> ' . ($req ? '<span class="required">*</span>' : '') . 
        '<input id="author" name="author" type="text" placeholder="Name" value="' . esc_attr($commenter['comment_author']) . '"' . $aria_req . ' /></p></div>'; 
//Edit Email Field 
$fields['email'] = '<div class="col-md-4"><p class="comment-form-author">' . '<label for="email">' . __('Email') . '</label> ' .     ($req ? '<span class="required">*</span>' : '') . 
        '<input id="email" name="email" type="text" placeholder="Email" value="' . esc_attr($commenter['comment_author_url']) . '" "' . $aria_req . ' /></p></div>'; 
//Edit Website Field 
$fields['url'] = '<div class="col-md-4"><p class="comment-form-author">' . '<label for="url">' . __('Website') . '</label> ' .      ($req ? '<span class="required">*</span>' : '') . 
        '<input id="url" name="url" type="text" placeholder="Website" value="' . esc_attr($commenter['comment_author_url']) . '"' . $aria_req . ' /></p></div></div>';    

    return $fields; 
} 

add_filter('comment_form_default_fields','alter_comment_form_fields'); 

回答

0

未定义的索引错误发生在尚未初始化的变量用于表达式中时。你可以做的是使用isset()在你尝试使用它之前检查变量是否为空。

0

尽量把

$aria_req = ($req) ? " aria-required='true'" : '' ; 

就在$ comments_args之前。这个对我有用。

错误出现,因为$ aria_req未定义或为空。 当$ req为空/空时,$ aria_req将被定义为''。