WordPress ユーザーがGoogle検索エンジンから遷移してきたアクセスを判定して表示内容を変更させるショートコード

概要説明

Google検索エンジンからユーザーがアクセスしてきたときだけという判定処理を追加するショートコード。使い方次第だとは思いますが特定の条件の場合にのみ表示のロジックはこちらをベースに拡張が行えます。

functions.php
/*----------------------------------------------------
 Google検索エンジンからサイトへ来たかを判定して表示を切り替える
----------------------------------------------------*/
if ( !function_exists( 'is_google_search' ) ){
    function is_google_search() {
      $check_url = 'https://www.google.com/';
      if(isset($_SERVER["HTTP_REFERER"])){
          if ( $check_url == $_SERVER['HTTP_REFERER'] ) {
              if(!isset($_COOKIE['wp_google_search'])) {
                  setcookie('wp_google_search', 1, time()+3600); // 1時間有効
              }
          }
      } else {
          return FALSE;
      }
    }

    // 表示分岐用のショートコード
    function google_search_start() {
        if(!isset($_COOKIE['wp_google_search'])) {
            echo '<div style="display:none;">';
        } else {
            echo '<div>';
        }
    }
    add_shortcode('google_start', 'google_search_start');

    function google_search_else() {
        if(!isset($_COOKIE['wp_google_search'])) {
            echo '</div><div>';
        } else {
            echo '</div><div style="display:none;">';
        }
    }
    add_shortcode('google_else', 'google_search_else');

    function google_search_end() {
        echo '</div>';
    }
    add_shortcode('google_end', 'google_search_end');
}

サイト全体とするか特定のページにするか

php
<?php is_google_search(); ?>

対象とするテンプレートファイルやヘッダーなどに上記コードを設定します

ページ側での表示切り分け

<?php echo do_shortcode('[google_start]'); ?>
    Google検索エンジンからのアクセスありがとうございます。
<?php echo do_shortcode('[google_else]'); ?>
    Googleから「functions.php WordPressセキュリティー診断サービス」にて検索してください。
<?php echo do_shortcode('[google_end]'); ?>

検索エンジンでキーワード指定でアクセスしてもらいたい場合など

ブラウザからのアクセスとクローラーでのアクセスでコンテンツ内容に差異がある場合にペナルティを受けることがあるので多様しないほうが良いと思いますがこんなことできるのかなと思ってコードを作成してみました

ご利用の際は多様はおすすめいたしませんが効果的に利用できる可能性もございます

関連機能

  1. WordPress オリジナルショートコードの作成方法

  2. WordPress カテゴリ選択で条件付き絞り込みが行える検索フォームを実装

  3. 投稿ページのサイトマップをプラグイン無しで実装できるショートコード

サイドバー

よく使うカスタマイズ

最近の記事

アニメの名言集

「それでも」と言い続けろ
自分を見失うな

機動戦士ガンダムUC
by マリーダ・クルス

Profile

PAGE TOP
Amazon プライム対象