Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 电子商务注册时需要设置AutomateWoo复选框_Php_Jquery_Wordpress_Woocommerce_Registration - Fatal编程技术网

Php 电子商务注册时需要设置AutomateWoo复选框

Php 电子商务注册时需要设置AutomateWoo复选框,php,jquery,wordpress,woocommerce,registration,Php,Jquery,Wordpress,Woocommerce,Registration,AutomateWO插件在注册部分(用户未登录时位于我的帐户页面)添加了一个复选框字段,我正在尝试将其设置为必需 我不希望人们能够在不勾选此框的情况下注册 该框是一个选项,显示如下: <p class="automatewoo-optin form-row"> <label class="woocommerce-form__label woocommerce-form__label-for-checkbox checkbox"&g

AutomateWO插件在注册部分(用户未登录时位于我的帐户页面)添加了一个复选框字段,我正在尝试将其设置为必需

我不希望人们能够在不勾选此框的情况下注册

该框是一个选项,显示如下:

<p class="automatewoo-optin form-row">
    <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="automatewoo_optin" id="automatewoo_optin">
        <span class="automatewoo-optin__checkbox-text">I want to receive updates about products and promotions.</span>
    </label>
</p>
我还尝试过使用
woocommerce\u register\u form
woocommerce\u forms\u field
挂钩

“注册”表单的图像预览,复选框位于底部

我如何在WooCommerce注册部分设置AutomateWO复选框


编辑: 在某些情况下,您可能需要将第二个“required”替换为“true”


jQuery(文档).ready(函数($){
$('input[name=“automatewoo_optin”]”)。prop('required','required');
});

使用jQuery。要么添加到主题脚本中,要么添加到
wp\u页脚中
,然后换行到


要使位于WooCommerce注册表上的复选框字段成为必需字段,请使用以下命令:

//验证商业登记表自定义字段。
添加操作(“woocommerce\u register\u post”、“wc\u validate\u automatewoo\u optin\u字段”,10,3);
函数wc\u validate\u automatewoo\u optin\u字段($username、$email、$validation\u errors){
如果(!isset($_POST['AutomateWO_optin'])| |为空($_POST['AutomateWO_optin'])){
$validation\u errors->add('optin\u error','uuuuu('复选框是必填字段,'woocommerce'));
}
返回$validation\u错误;
}
然后,还可以选择使用以下选项使复选框字段成为可视必需字段:

add_filter( 'woocommerce_register_form_start', 'bd_require_automatewoo_optin');
function bd_require_automatewoo_optin( $fields ) {
$fields['automatewoo_optin']['required'] = true;
return $fields;
}
//根据需要标记复选框字段
添加过滤器(“woocommerce\u register\u form\u end”、“add\u automatewoo\u optin\u jquery”);
函数add_automatewoo_optin_jquery(){
?>
(函数($){
$('p.automatewoo-optin').addClass('validate-required');
$('p.automatewoo-optin>label>span')。追加('*');
})(jQuery);

啊,我没有想到这一点。这个jQuery自动勾选复选框。我们如何使它不选中字段,但用户必须在提交表单之前勾选它?+1感谢Loic这个答案效果更好,在使用Howard的jQuery方法进行一些测试后,我在签出页面上发现了一个问题,该字段被忽略并重新设置注册是可以的,无需勾选它。@AlexBanks您在我的帐户上的WooCommerce注册问题中提出的问题,我的代码只是回答这个问题……由于我的答案是回答您最初的问题,并且有效,您可以请回答,谢谢。现在结帐时,您必须问另一个问题,并给出相关生成的h此选项字段的tml代码。
jQuery(document).ready(function($){
   $('input[name="automatewoo_optin"]').prop('checked', true);
});