国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Le titre réécrit de l'invite d'erreur de vérification de case à cocher personnalisée dans l'enregistrement Woocommerce est?:?Résoudre le problème de l'invite d'erreur de vérification de case à cocher personnalisée dans l'enregistrement Woocommerce.
P粉318928159
P粉318928159 2023-09-03 12:06:38
0
2
720
<p>Dans WooCommerce, j'ai ajouté une case à cocher personnalisée ??Confidentialité?? au formulaire d'inscription client en utilisant le code suivant?: </p> <pre class="brush:php;toolbar:false;">//Ajouter une case à cocher au formulaire d'inscription add_action( 'woocommerce_register_form', 'add_privacy_checkbox_registration' ); fonction add_privacy_checkbox_registration() { $checkbox_text = sprintf( '%s <a href="%s"><strong>%s</strong></a>', __( 'Я прочитал и согласен с' ), esc_url( site_url('/politic-conf/') ), __( 'politique confidentielle' ) ); ?> <div class="woocommerce-privacy-policy-wrapper"> <p class="form-row validate-required"> <label class="woocommerce-form__label woocommerce-form__label-for-checkbox case à cocher"> <input type="checkbox" class="woocommerce-form__input woocommerce-form__input-checkbox input-checkbox" name="privacy_policy" <?php vérifié (false, true id="privacy); -politique" /> <span class="woocommerce-privacy-policy-checkbox-text"><?php echo $checkbox_text ?></span> ?php esc_attr_e( 'obligatoire', 'woocommerce' ); </étiquette> <type d'entrée="caché" nom="champ-politique" valeur="1" /> </p> </div> <?php } // vérifier add_filter( 'woocommerce_registration_errors', 'privacy_checkbox_registration_validation', 10, 3 ); function Privacy_checkbox_registration_validation( $erreurs ) { si( is_checkout() ) { renvoyer $erreurs?; } if ( vide( $_POST[ 'privacy_policy' ] ) ) { $errors->add( 'privacy_policy_reg_error', 'Vous devez entrer en contact avec la politique de confidentialité.' ); } renvoyer $erreurs?; } ≪/pré> <p>Le code est valide. Case à cocher ajoutée. La logique des cases à cocher fonctionne également. Cela signifie que si vous ne cochez pas la case, l'enregistrement de l'utilisateur ne sera pas possible. </p> <p>Mais il y a un problème. Si la case n'est pas cochée, le texte d'erreur n'appara?t pas à l'écran...</p> <p>Voici la page en question sur mon site - Page à problèmes</p> <p>Des idées?? </p>
P粉318928159
P粉318928159

répondre à tous(2)
P粉464088437

L'avez-vous essayé sans cela ?

if( is_checkout() ) {
    return $errors;
}

étant donné que le filtre est un filtre enregistré, il semble que ce morceau de code soit inutile car il ne sera pas appelé lors du paiement. Essayez de commenter ce bloc de code et testez à nouveau l'enregistrement. Si cela fonctionne, testez également le processus de paiement pour vous assurer qu'il ne se passe pas mal.

return $errors;會結(jié)束函數(shù),錯誤不會被添加。當(dāng)然,我會假設(shè)is_checkout() renverra faux lors de l'inscription, mais peut-être que lors de l'inscription, il retournera vrai pour une raison quelconque??

Quoi qu’il en soit, ce n’est qu’une tentative.

P粉231112437

J'ai testé votre code sur un site de test et pour moi ?a marche bien, il affiche une erreur lorsque la case est décochée...

Maintenant, il manque quelque chose dans la dernière fonction, vous avez déclaré 3 paramètres dans la partie add_filter(), il en manque donc 2. En même temps j'ai aussi simplifié votre code

Voici juste le code modifié pour la dernière fonction :

// 驗證
add_filter( 'woocommerce_registration_errors', 'privacy_checkbox_registration_validation', 999, 3 );
function privacy_checkbox_registration_validation( $errors, $username, $email ) {
    // 不在結(jié)賬頁面
    if( ! is_checkout() && empty( $_POST[ 'privacy_policy' ] ) ) {
        $errors->add( 'privacy_policy_error', 'Вам нужно принять политику конфиденциальности.' );
    }
    return $errors;
}

Maintenant, je ne sais pas si cela résout votre problème car la page se recharge après soumission sur votre site, donc le message d'erreur n'a pas le temps de s'afficher.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal