Woocommerce – disable «place order» until user checks Privacy Policy

I think you should jQuery to enable and disable the checkout button. Please try this script.

Put this script in the footer.php.

jQuery(window).on('load',function(){
        setTimeout(function(){
        jQuery('#payment #place_order').attr("disabled","disabled");
        console.log('Hello');
        },1000);            
    });
    jQuery(document).on('change','#privacy_policy_field #privacy_policy',function() {
     var ischecked= jQuery(this).is(':checked');
        if(!ischecked){
          jQuery('#payment #place_order').attr("disabled","disabled");
          console.log('unchecked');
        }else{
            jQuery('#payment #place_order').removeAttr("disabled");
            console.log('checked');
        }
    }); 

Note: This is tested script for your code.