add_filter('woocommerce_checkout_fields',function ($fields){// L'e-mail n'est plus obligatoire pour le client. if (isset($fields['billing']['billing_email'])){$fields['billing']['billing_email']['required']=false}return $fields});add_action('woocommerce_checkout_process',function (){// Si un e-mail est déjà fourni,on ne fait rien. if (!empty($_POST['billing_email'])){return}// Récupération du téléphone. $phone=isset($_POST['billing_phone']) ? sanitize_text_field(wp_unslash($_POST['billing_phone'])) :'';if (empty($phone)){return}// Garder uniquement les chiffres. $phone_digits=preg_replace('/[^0-9]/','',$phone);if (empty($phone_digits)){return}// Génération d'un e-mail unique.
    $email = 'client-' . $phone_digits . '@camer100.com';

    // Injecter l'e-mail dans les données POST utilisées par WooCommerce. $_POST['billing_email']=sanitize_email($email)});