AI要約
はじめに
免責事項または利用規約を読んだ後にチェックボックスを有効にしますか?チェックボックスフィールドの免責事項/利用規約表示を有効にする機能の可能性を活用する方法を学びましょう。この機能により、ユーザーは利用規約に同意したことを表明できます。ただし、ユーザーが免責事項を最後までスクロールするまでこのフィールドを無効にしたい場合は、このチュートリアルが最適です!
フォームの作成
フォームを作成し、フィールドを追加することから始めます。フォームの作成にヘルプが必要な場合は、こちらの役立つガイドをご覧ください。

利用規約の有効化
他のフィールドを追加したら、チェックボックスフィールドを追加し、詳細設定タブをクリックします。このタブには、免責事項/利用規約表示を有効にするオプションが表示されます。このオプションをオンにし、説明フィールドにテキストを追加します。
![wpforms-enable-disclaimer - WPForms チェックボックスを選択し、[高度な設定]タブで[免責事項/利用規約表示を有効にする]オプションを切り替えます。](https://wpforms.com/wp-content/uploads/2023/08/wpforms-enable-disclaimer.jpg)
有効にしたら、一般設定タブに戻り、説明にテキストを追加します。

スニペットの追加
次に、スニペットをサイトに追加します。スニペットをサイトに追加する方法と場所については、こちらのチュートリアルをご覧ください。
/**
* Disable checkbox until terms of service has been read
*
* @link https://wpforms.com/developers/how-to-enable-a-checkbox-after-reading-disclaimer/
*/
function wpf_dev_tos_confirmation( ) {
?>
<script type="text/javascript">
jQuery(document).ready( function() {
// Set an attribute on the checkbox description to readonly
jQuery( "div#wpforms-3658-field_14-description" ).attr( "readonly","readonly" );
// Set an attribute on the checkbox description to overflow-y scroll to check the scroll position
jQuery( "div#wpforms-3658-field_14-description" ).attr( "overflow-y","scroll" );
// Set an attribute on the checkbox field to disabled
jQuery( "#wpforms-3658-field_14 input" ).attr( "disabled","true" );
// As the user scrolls through the description, envoke this function
jQuery( "div#wpforms-3658-field_14-description" ).scroll(function () {
// Evaluate the scroll position inside the checkbox description
if (jQuery(this).scrollTop() == jQuery(this)[0].scrollHeight - jQuery(this).innerHeight() || jQuery(this).scrollTop() + jQuery(this).innerHeight() >= jQuery(this)[0].scrollHeight ) {
// When user has scrolled to the bottom of the description, remove the disabled attribute
jQuery( "#wpforms-3658-field_14 input" ).removeAttr( "disabled" );
}
});
});
</script>
<?php
}
add_action( 'wpforms_wp_footer_end', 'wpf_dev_tos_confirmation', 30 );
このスニペットは、チェックボックスフィールドの説明をdiv#wpforms-3658-field_14-descriptionを使用して確認します。当社のフォームIDは3658で、チェックボックスフィールドのフィールドIDは14です。次に、このフィールドにreadonlyとoverflow-y, scrollの2つの属性を設定します。これにより、免責事項のスクロール位置を計算できるため、訪問者が免責事項の最下部までスクロールしたタイミングを知ることができます。
スニペットの次のセクションでは、フィールドID#wpforms-3658-field_14 inputを使用して、チェックボックスフィールドにdisabled属性を追加します。
ユーザーが免責事項を下にスクロールすると、スクロール位置を計算します。スクロール位置が0に達すると、disabled属性が削除され、訪問者はチェックボックスをクリックして同意できるようになります。
訪問者がフォームを表示しても、免責事項の最後までスクロールしない限り、免責事項のチェックボックスに同意することはできません。
これで完了です!フォーム内のチェックボックスの選択数をカウントしますか?フォーム内のチェックボックスの選択数をカウントする方法の記事をご覧ください。
関連
アクション参照: wpforms_wp_footer_end