フォーム内でのコピー&ペーストを防ぐ

概要

フォームのコピー&ペーストを防ぎたいですか?訪問者がフォームフィールドに何かをコピー&ペーストできないようにしたい場合があります。

この記事では、カスタムスニペットを使用して、訪問者がフォームフィールドに何もペーストしないようにする方法を紹介します。

注意:フィールドのAdvancedタブで有効になっているオプションがある場合、このスニペットは正しく動作しない可能性があります。例えば、Single Line TextまたはParagraphフォームフィールドのテキストまたは文字数制限です。

スニペットの追加

このスニペットをサイトに追加するだけです。スニペットをサイトに追加する場所や方法についてサポートが必要な場合は、こちらのチュートリアルをご覧ください

/**
 * Prevent visitors from copying and pasting in your form fields
 *
 * @link https://wpforms.com/developers/how-to-prevent-copy-and-paste-inside-your-form/
 */
   
function wpf_dev_prevent_copy_paste( ) {
?>
  
    <script type="text/javascript">
 
    jQuery(document).ready(function () {
         
        // Update the form ID to match your own form ID
        jQuery( 'form#wpforms-form-2189' ).on( 'copy paste', function (e) { e.preventDefault(); } );
         
    });
 
    </script>
  
<?php
}
  
add_action( 'wpforms_wp_footer_end', 'wpf_dev_prevent_copy_paste', 30 );

このスニペットでは、このスニペットをID 2189.このフォームIDをあなたのフォームのIDと一致するように更新する必要があります。このIDを見つけるのにサポートが必要な場合は このチュートリアルをご覧ください。.

訪問者があなたのサイトに来て、フォームフィールドにペーストしようとすると、訪問者がフィールドに物理的に入力するまで、フィールドは空のままです。

よくある質問

WPFormsのコピー&ペースト機能を無効にする方法について、よくある質問にお答えします。

すべてのWPFormsに対してこれを行いたい場合はどうすればいいでしょうか?

すべてのWPFormsにこれを強制したい場合は、代わりにこのスニペットを使ってください。

/**
 * Prevent visitors from copying and pasting in your form fields
 *
 * @link https://wpforms.com/developers/hhow-to-prevent-copy-and-paste-inside-your-form/
 */
   
function wpf_dev_prevent_copy_paste( ) {
?>
  
    <script type="text/javascript">
 
    jQuery(document).ready(function () {
         
        // Update the form ID to match your own form ID
        jQuery( '.wpforms-container' ).on( 'copy paste', function (e) { e.preventDefault(); } );
         
    });
 
    </script>
  
<?php
}
  
add_action( 'wpforms_wp_footer_end', 'wpf_dev_prevent_copy_paste', 30 );

リッチテキストエディタのフィールドにコピー&ペーストできないようにできますか?

上記のスニペットを使用すると、リッチテキストエディタ・フィールドのテキスト・タブでは、自動的にスクリプトが無効になります。しかし、ビジュアル・タブの場合は、iFrame経由で読み込まれるため、コピー&ペースト機能を無効にするスニペットは現在のところ機能しません。

このスクリプトは、リッチテキストエディタのフォームフィールドのテキストタブでのみ動作します。

これで完了です!これで、ユーザーがフォームフィールドでコピーや貼り付けを行えないようにすることができました。

次に、あなたのサイトのフォーム入力を大文字にしたいですか?WPFormsでフォームフィールドの入力を大文字にする方法についてはチュートリアルをご覧ください。

アクション・リファレンス:wpforms_wp_footer_end