自定义wordpress4.9.6的评论cookie提示‘Save my name, email, and website…’

如果勾选了后台设置的Show comments cookies opt-in checkbox.,在wordpress4.9.6的评论框生成函数comment_form()函数中,会在评论框后面添加一个复选框Save my name, email, and website in this browser for the next time I comment.意思是记住评论用户,下次评论的时候自动填充用户邮箱及用户名这些信息。这个功能明显是可以提神用户体验的,但由于是新功能,翻译也未更新,所以这句有点长的英文与主题不太符合,我们需要做点什么。

这个区域是通过comment_form_default_fields来控制的,在function.php中添加对应代码实现对应效果.

不需要这个功能(不推荐)

function comment_form_hide_cookies_consent( $fields ) {
    unset( $fields['cookies'] );
    return $fields;
}
add_filter( 'comment_form_default_fields', 'comment_form_hide_cookies_consent' );

自定义文本(默认有comment_author_email就选中)

function comment_form_change_cookies_consent( $fields ) {
    $commenter = wp_get_current_commenter();
    $consent   = empty( $commenter['comment_author_email'] ) ? '' : ' checked="checked"';
    $fields['cookies'] = '<p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes"' . $consent . ' />' . '<label for="wp-comment-cookies-consent">记录我的信息并自动填充</label></p>';
    return $fields;
}
add_filter( 'comment_form_default_fields', 'comment_form_change_cookies_consent' );

不默认选中

function comment_form_not_checked_cookies_consent( $fields ) {
    $fields['cookies'] = '<p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes" />' . '<label for="wp-comment-cookies-consent">' . __( 'Save my name, email, and website in this browser for the next time I comment.' ) . '</label></p>';
    return $fields;
}
add_filter( 'comment_form_default_fields', 'comment_form_not_checked_cookies_consent' );

整理自:Update 4.9.6: Checkbox comments – Privacy approved?

发表评论

电子邮件地址不会被公开。 必填项已用*标注