ご注意!

この記事にはJavaScriptコードが含まれており、開発者を対象としています。このコードは便宜上提供していますが、コードのカスタマイズやサードパーティの開発についてはサポートを提供していません。

追加のガイダンスについては、WPBeginner の カスタムコードの追加方法に関するチュートリアル を参照してください。

閉じる

フォーム内でのコピー&ペーストを防止する

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

この記事では、カスタムスニペットを使用して、訪問者がフォームフィールドに何かを貼り付けるのを防ぐ方法を説明します。

注意:フィールドで詳細設定タブのオプションが有効になっている場合、このスニペットは正しく機能しない可能性があります。例としては、一行テキストまたは段落フォームフィールドのテキストまたは文字数制限があります。

スニペットの追加

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

/**
 * 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/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( '.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