AI要約
Form Locker Addonで、フォームの残りエントリー数を表示する方法を知りたいですか?これは、訪問者に残りエントリー数がいくつあるかを知ってもらいたい場合に特に役立ちます。このチュートリアルでは、PHPを使用してフォームに残りのエントリー数を表示する方法を説明します。
Form Locker Addon内で、フォームに送信できるエントリー数を制限することを選択できます。
そのエントリー制限に達すると、Form Lockerアドオンは自動的にフォームを閉じます。
このチュートリアルでは、訪問者にフォームが閉じる前に残りエントリー数がいくつあるかを表示してもらいたいと考えています。
フォームの作成
まず、新しいフォームを作成し、フィールドを追加します。このチュートリアルの目的では、エントリーのために名前とメールアドレスのみを収集します。
フォームの作成についてサポートが必要な場合は、こちらのドキュメントをご覧ください。

エントリー制限を有効にする
次に、設定タブをクリックし、次にForm Lockerタブを選択して、フォームでエントリー制限を有効にします。エントリー制限と制限の下で、合計エントリー制限を有効にするトグルをスライドし、制限の数量と、フォームが閉じられたときに表示されるメッセージを設定します。

残りエントリー数を表示する
最後に、このスニペットをサイトに追加する必要があります。
サイトにスニペットを追加する方法がわからない場合は、このチュートリアルを確認してください。
/**
* Display remaining entry limit.
*
* @link https://wpforms.com/developers/how-to-display-remaining-entry-limit-number/
*/
function wpf_dev_remaining_entries( $form_data ) {
// Optional, you can limit to specific forms. Below, we restrict output to
// form #1899.
if ( absint( $form_data[ 'id' ] ) !== 1899 ) {
return;
}
if ( empty( $form_data[ 'settings' ][ 'form_locker_entry_limit_enable' ] ) ) {
return;
}
$reference = ! empty( $form_data[ 'settings' ][ 'form_locker_entry_limit' ] ) ? (int) $form_data[ 'settings' ][ 'form_locker_entry_limit' ] : 0;
$entries_count = wpforms()->entry->get_entries( array( 'form_id' => $form_data[ 'id' ] ), true );
$result = absint( $reference - $entries_count );
echo '<p>' . esc_html( $result ) . __( ' entries remaining', 'text-domain' ) . '</p>';
}
add_action( 'wpforms_frontend_output', 'wpf_dev_remaining_entries', 10, 1 );
上記のコードスニペットのフォームIDを、ご自身のフォームIDに合わせて更新する必要があります。フォームIDを見つけるのに支援が必要な場合は、このチュートリアルをご覧ください。
コードが追加されると、エントリー制限がフォームのタイトルの下に、フォームフィールドの上に表示されます。

表示される数値は、フォームが読み込まれたときに決定されます。その結果、ユーザーがフォームを送信するまでに、この数値が正確でない場合があります。
これで、Form Lockerフォームに残りのエントリー数を表示するために必要なすべてが揃いました。フォームが受け取ったフォーム送信数を表示する方法を知りたいですか?特定のフォームのエントリー送信数を表示する方法に関するチュートリアルをご覧ください。