※記事内に商品プロモーションを含む場合があります
PressoでWordPressに自作のGoogleキーワードサジェストツールを設置したったww
という記事が流れてきたので真似て、設置してみることにしました。
WordPressの固定ページにキーワードサジェストツールを設置する方法
GoogleキーワードサジェストツールをWordPress固定ページに設置する方法
を紹介します。
その1、固定ページを作る
GoogleキーワードサジェストツールをWordPressに設置する固定ページを作成します。
タイトルは『Googleキーワードサジェストツール』など、スラッグは『suggest』などにします。
タイトル・スラッグ共に自由に決めてもOKです。
ただし、スラッグは後々使うので、コピーしておきましょう。
コンテンツ(本文)は空の状態にして、非公開にしておくと良いでしょう。
その2、ページテンプレートを作って、コードを編集
単一記事用のテンプレート、賢威ではSingle.phpをコピーして名前を
『page-suggest.php』の変更します。
ここが重要!、スラッグをsuggest以外にした場合はファイル名のこの部分
『page-suggest.php』
をスラッグに合わせて下さい。
ファイル名をスラッグに合わせないとツールが動作せず、数十分ハマリました。
コピーしたファイルに本文を読み込むコード
<?php the_content(); ?>
などを削除します。
本文を読み込むコードが無いので固定ページの編集でコンテンツを入れても
表示されません。
このコード削除した部分にGoogleキーワードサジェストツールのコードを書きます。
コードはこちらのサイトから次にページテンプレートを作って、サジェストツール用コードをゴリゴリ書く
コードの一番上の部分、(ここに固定ページのパーマリンクをコピペ)は
固定ページを一旦表示させた時のURLを入力しておくと良いでしょう。
その3、ファイルをアップロード&テスト
先ほど作った『page-suggest.php』をサーバにアップロードします。
アップロード先はWordPressのディレクトリからwp-content/themes/(テーマ名)
single.phpなどテンプレートファイルがあります。
うまく動作すれば検索窓が表示され、キーワードを入れれば
この様にGoogleから取得したサジェストキーワードが表示されます。
ちなみに、小野田坂道は弱虫ペダルの主人公の名前です。
もし表示されない場合、本文が空の状態で表示される場合は、
スラッグとファイル名が一致していない。
表示されるページが真っ白になってしまう場合は
phpコードに間違いがあり止まっている可能性が高いです。
どうしてもエラーの原因がわからない場合はデバッグモードをONにすると
原因が分かるかもしれません。
【関連】WordPressが真っ白になった原因を探るデバッグモード
Googleキーワードサジェストツールを改良してみた
元々のコードだと、
キーワードしか表示されずこのキーワードで検索してみたい時コピーして
新しいタブを開いてペーストして検索する必要があり、面倒!
なので、ワンクリックで検索結果が表示出来る様に改造してみました。
ちなみに上の写真では改造後でキーワードがリンクになっています。
変更するのは25行目の echo “<tr><td>”.$my_inp~で始まる行。
この行を、
echo “<tr><td>”.$my_input_word_added_letter.”</td>\t<td><a href=\”https://www.google.co.jp/search?q=”.$completeSuggestion->suggestion->attributes()->data.”\” target=\”_blank\”>”.$completeSuggestion->suggestion->attributes()->data.”</a></td><tr>\n”;
の様に変更すると、ワンクリックでキーワードのGoogle検索結果を表示できます。
あとがき
公開されているツールだと広告が邪魔だったりします。
Google以外にもBingやYahooのサジェストキーワードも表示出来るサイトもありますが、
サジェストキーワードの数はGoogleが一番多いので他は必要無い様に思えます。
同じサジェストキーワードが何回も表示されてしまう事!
なので、今度暇な時にサジェストキーワードをプールして
今までに表示したキーワードだったら表示しない様なコードを追加しようかと思っています。
キーワードを入れて検索を開始してから、
結果が表示されるまで約10秒、検索中のサーバ負荷を見てもロードアベレージは上がらず
それほど負荷は掛からない様です。