『reCAPTCHA v3』を2ページ以上表示させる時の方法(問い合わせ+α・固定ページ・投稿ページetc..)

以前『reCAPTCHA v3』を問い合わせページのみ&左側に表示させる方法:その2を書いた時は、問い合わせページにのみ『reCAPTCHA v3』を設置しました。

ですが、今回「問い合わせページ」とは別に送信機能を使ったページを「Contact Form 7」を使って作成したのですが、なぜか送信がされなかったんですよね。ですので色々調べてはみたのですがなかなか答えに辿り着けず。。

で、ふと「Contact Form 7」で作った「問い合わせページ」を見てみると『reCAPTCHA v3』がついているのに、新たに作ったページには『reCAPTCHA v3』がついてない!ということに気付き、これが原因かも。と思い『reCAPTCHA v3』を新たなページにも設置してみたところ、無事送信できた!のですが、簡単には設置できなかった。。

『reCAPTCHA v3』を2ページ以上表示させる時の方法(問い合わせ+α・固定ページ・投稿ページetc..)

ということで、今回は『reCAPTCHA v3』を「問い合わせページ」だけではなく、2ページ以上表示させる時の記述方法です。
環境は前回同様、Wordpressで「Contact Form 7」のプラグインを使用での話になります。

目次

  1. 『reCAPTCHA v3』を1ページにのみに表示させる
  2. 『reCAPTCHA v3』を2ページ以上に表示させる

『reCAPTCHA v3』を問い合わせページのみ&左側に表示させる方法:一覧

『reCAPTCHA v3』を1ページ(問い合わせページ)にのみに表示させる

これは以前書いたものと同じなのですが、functions.phpに以下の記述をします。ちなみに問い合わせページは固定ページで、パーマリンクは「contact」です。

add_action( 'wp_enqueue_scripts', function() {
	if(is_page('contact')) return;
    wp_deregister_script('google-recaptcha');
}, 100, 0);

これで「Contact Form 7」によって追加されるreCAPTCHA関連のコードがすべて読み込まれなくなります。
最後の4行目は優先順位で、デフォルトでは「10」なのですが、このままだと機能しない場合があるの「100」に指定しています。

ちなみに以前(2021/3頃)までは、ここを指定しなくても問題なかったようですね。(詳細は『reCAPTCHA v3』を問い合わせページのみ&左側に表示させる方法:その2にて)

『reCAPTCHA v3』を2ページ以上に表示させる

固定ページと固定ページの場合

これが今回なかなか辿り着けなかっていた記述です。こちらも functions.phpに記述をします。

add_action( 'wp_enqueue_scripts', function() {
	if(is_page(['contact','new-page'])) return;
    wp_deregister_script('google-recaptcha');
}, 100, 0);

固定ページ・新たなページのパーマリンクは、それぞれ「contact・new-page」としています。

ちなみに最初は上記の2行目を↓このように並列にしていたのですが、

	if(is_page('contact','new-page')) return;

これではうまく表示されず、上記の記述を見つけるのに苦労しちゃった。というわけなんですね。

というわけで、ここでは↓のように[ ]で括って記述してくださいね。

	if(is_page(['contact','new-page'])) return;

固定ページと投稿ページの場合

固定ページと投稿ページの組み合わせの場合は以下になります。

add_action( 'wp_enqueue_scripts', function() {
  if(is_page('contact')) return;
  if(is_single('new-page')) return;
    wp_deregister_script('google-recaptcha');
}, 100, 0);

あとこれは以前も記載しましたが念のため。

『reCAPTCHA』を使っているページには、必ずロゴを表示しなければいけないという決まりがありますので、display:none;等で消しちゃうと規約違反になる のでご注意くださいね。

Google AdS



関連記事

URLwwwありなし

URLの正規化:wwwあり、なしのドメインを統一する記述方法(エックスサーバー(XSERVER) にて)


前回のブログ で.htaccessに301リダイレクトをするための記述方法について書きましたが、ついでにwwwあり、なし…

記事を読む▷


z-index が効かない時の対処方法


z-index が効かない時がちょくちょくあります。でも、仕事でそういう場合に遭遇すると、その場しのぎで対処法を見つけて…

記事を読む▷


共通パーツ(header,footer等)を読み込んで編集を楽にする方法:JavaScript編 サムネイル

共通パーツ(header,footer等)をjQueryで読み込んで編集を楽にする方法 & 文字化け対策


WordPress等のCMSではなく、htmlで構築され、headerやfooter等、同じパーツを使っているサイトを編…

記事を読む▷


onMouseOver、onMouseOutで、簡単に画像を切り替える


今までマウスオーバー等で画像を切り替える時は、jQueryを使ったり、cssで画像を重ねてopacityで画像を透過させ…

記事を読む▷


『WinSCP』をMacで使えるようにする方法!!


FTPソフトの中では、やはり『WinSCP』が一番使いやすいです。でも、Macでは普通には使えません。。FileZill…

記事を読む▷


Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください