加入收藏 | 设为首页 | 会员中心 | 我要投稿 北几岛 (https://www.beijidao.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

php – 在Woocommerce注册表单中添加条款和条件复选框

发布时间:2021-07-06 05:19:21 所属栏目:大数据 来源: https://www.jb51.cc
导读:在woocommerce注册表中,注册按钮之前没有“条款和条件”. 有没有办法让它出现在表格中? 这是the link of my theme layout. 解决方法: 更新于2018年7月 – 增加了Woocommerce 3.4版的兼容性 如果尚未完成,首先您需要在结帐页面上启用条款和条件: 在wordpres

在woocommerce注册表中,注册按钮之前没有“条款和条件”.

有没有办法让它出现在表格中?

这是the link of my theme layout.

解决方法:

更新于2018年7月 – 增加了Woocommerce 3.4版的兼容性

如果尚未完成,首先您需要在结帐页面上启用条款和条件:

>在wordpress中为您的条款和条件创建新页面
>要在Woocommerce中启用该页面>设置>结帐>结帐页面(部分):

enter image description here


>然后保存……你完成了.

在注册表单上获取条款和条件复选框的代码:

// Add term and conditions check Box on registration form
add_action( 'woocommerce_register_form', 'add_terms_and_conditions_to_registration', 20 );
function add_terms_and_conditions_to_registration() {

    if ( wc_get_page_id( 'terms' ) > 0 && is_account_page() ) {
        ?>
        <p class="form-row terms wc-terms-and-conditions">
            <label class="woocommerce-form__label woocommerce-form__label-for-checkBox checkBox">
                <input type="checkBox" class="woocommerce-form__input woocommerce-form__input-checkBox input-checkBox" name="terms" <?PHP checked( apply_filters( 'woocommerce_terms_is_checked_default', isset( $_POST['terms'] ) ), true ); ?> id="terms" /> <span><?PHP printf( __( 'I&rsquo;ve read and accept the <a href="%s" target="_blank" class="woocommerce-terms-and-conditions-link">terms &amp; conditions</a>', 'woocommerce' ), esc_url( wc_get_page_permalink( 'terms' ) ) ); ?></span> <span class="required">*</span>
            </label>
            <input type="hidden" name="terms-field" value="1" />
        </p>
    <?PHP
    }
}

// Validate required term and conditions check Box
add_action( 'woocommerce_register_post', 'terms_and_conditions_validation', 20, 3 );
function terms_and_conditions_validation( $username, $email, $validation_errors ) {
    if ( ! isset( $_POST['terms'] ) )
        $validation_errors->add( 'terms_error', __( 'Terms and condition are not checked!', 'woocommerce' ) );

    return $validation_errors;
}

代码位于活动子主题(或活动主题)的function.PHP文件中.经过测试和工作.

enter image description here

如果未勾选复选框,则会显示错误消息.

enter image description here

This checkBox is only a validation step (It is not saved in database, as we don’t use that information anywhere).

加成:

要仅在“注册”页面中允许使用条款和条件,请使用以下其中一项:

add_filter( 'woocommerce_checkout_show_terms', '__return_false' );

要么

add_filter( 'woocommerce_get_terms_and_conditions_checkBox_text', '__return_false' );

代码位于活动子主题(或活动主题)的function.PHP文件中.在WC 3.5上测试并且有效.

(编辑:北几岛)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读