概要
フォームのコピー&ペーストを防ぎたいですか?訪問者がフォームフィールドに何かをコピー&ペーストできないようにしたい場合があります。
この記事では、カスタムスニペットを使用して、訪問者がフォームフィールドに何もペーストしないようにする方法を紹介します。
注意:フィールドの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