WPForms で特定のフォームに固有のバリデーションメッセージをカスタマイズしたいですか?WPForms ではグローバルにバリデーションメッセージをカスタマイズすることができますが、フォームごとに異なるメッセージを使いたい場合もあるでしょう。
このチュートリアルでは、PHP コードスニペットを使って特定のフォームの固有のバリデーションメッセージを変更する方法を紹介します。
コード・スニペットの追加
特定のフォームに対する固有のバリデーションメッセージをカスタマイズするには、以下のPHPコードスニペットをサイトに追加する必要があります。コードスニペットをサイトに追加する際にヘルプが必要な場合は、こちらのチュートリアルをご覧ください。
add_action( 'wpforms_wp_footer_end', 'wpf_custom_unique_validation_message' );
function wpf_custom_unique_validation_message() {
?>
<script type="text/javascript">
document.addEventListener('DOMContentLoaded', function() {
// Target the specific form by ID
var form = document.querySelector('#wpforms-100');
if (form) {
function replaceErrorMessage() {
var errorMessages = form.querySelectorAll('.wpforms-error');
errorMessages.forEach(function(messageElement) {
if (messageElement.textContent.includes('The value must be unique.')) {
messageElement.textContent = 'This value is already in use. Please enter a unique value.';
}
});
}
replaceErrorMessage();
new MutationObserver(replaceErrorMessage).observe(form, {
childList: true,
subtree: true
});
}
});
</script>
<?php
}
コードのカスタマイズ
このコードをあなたの特定のフォームで使えるようにするには、いくつかの調整が必要です:
- 交換
#wpforms-100
をご記入ください。ID番号の見つけ方については このチュートリアルをご覧ください。. - この行のカスタム・エラー・メッセージを修正する:
messageElement.textContent = 'This value is already in use. Please enter a unique value.';
テキストをご希望のカスタムメッセージに置き換えてください。
これで完了です!これで、特定のフォームに固有のバリデーションメッセージをカスタマイズすることができました。
次に、フォームバリデーションのカスタマイズについてもっと知りたいですか?WPFormsのバリデーションメッセージをカスタマイズする方法についてのチュートリアルをご覧ください。