Google™サイト内検索(カスタム検索エンジンv2)でオートコンプリートをXMLで定義する
2014/11/22
Google™カスタムエンジンによるサイト内検索フィールドを設置して、
オートコンプリート(キーワードサジェスト・候補表示)の登録を行おうと思った際には個別に入力するよりも、
バックアップも兼ねて元のデータをXMLで作成した方が便利です。
そうした手間のかかるXMLファイルの作成をExcelを利用するとサクサク作業ができます。
はじめに
カスタム検索エンジンをサイトに設置していてオートコンプリートの設定はされていますか?
私もこれまでは検索窓を設置しただけで特にカスタマイズをしてきませんでした。
いろいろなサイトで見かける検索ボックスでもあまりオートコンプリートが、
表示されるような体験をしたこともあまりありません。
カスタム検索エンジンには様々なオプションが用意されており多くの設定を行うことができます。
このオートコンプリートの登録もその一つです。
オートコンプリートの考え方
カスタム検索エンジンにおいてのオートコンプリートとは、
一般的なGoogle検索を利用した際に表示されるGoogle検索全体からのオートコンプリートではありません。
自身が設置したカスタム検索エンジンで入力され検索された実績に基づいて、
オートコンプリートの表示キーワードが蓄積されて表示されます。
逆を言えば、あまり利用されていないカスタム検索エンジンでは、
当然オートコンプリートも表示されることはないでしょう。
しかしながら、カスタム検索エンジンを設置した管理者が独自に、
オートコンプリート表示させたいキーワードを登録しておく機能があります。
そうした機能の詳細は以下でご紹介しています。
Google™サイト内検索(カスタム検索エンジンv2)の検索機能設定
本投稿ではそのオートコンプリートキーワードをXMLファイルで一括して登録する方法です。
オートコンプリートのXMLフォーマット
オートコンプリートのXMLフォーマットに関しては、
カスタム検索エンジンの設定からはダウンロードすることができません。
その為、別途XMLの定義を知ったうえで作成する必要があります。
(参考文献)CGSのオートコンプリート
GCS の設定 – Google Commerce Search — Google Developers (抜粋引用)
次の階層に示すように、オートコンプリート ファイルには要素が 1 つあり、複数の兄弟要素を指定できる子要素が 1 つあります:
Autocompletions
(1 つのみ)
Autocompletion
(複数の兄弟要素を指定可能)オートコンプリートの属性名の一覧を次の表に示します。
属性名 説明 値 term
追加または削除する個々の語句または正規表現です。 追加または削除するオートコンプリート語句です。たとえば、ユーザーに表示するオートコンプリート語句のリストに「storm shadow」を追加する場合は、「storm shadow」を値として追加します。同じ語句を複数の Autocompletion
エントリで指定するとエラーになります。type
語句をオートコンプリートに追加するか、オートコンプリートから削除するかを指定します。 次のどちらかを指定します:
1
– 語句を追加(ホワイトリスト)。2
– 語句を削除(ブラックリスト)。match
オプション。語句を完全に一致させるか正規表現として一致させるかを指定します。 次のどちらかを指定します:
1
– デフォルト。完全一致させます。2
– 正規表現。正規表現を指定できるのはブラックリストのみです。language
オプション。オートコンプリートを特定の言語に限定します。 これは未定義のままにしてください。GCS のデフォルトでは、コントロール パネルの [基本] セクションで定義した言語が使用されます。 オートコンプリート語句が検索エンジンに表示され始めるまでに最大 2 時間ほどかかることがあります。
尚、本リンク先「Google Commerce Search」のヘルプになります。
純粋な「カスタム検索エンジン」のヘルプではありません。
これはカスタム検索エンジンのヘルプではないのですが、十分に参考になります。
このヘルプでは以下のようなXML例を得ることができます。
サイト上に例示されているXMLを「Autocompletions.xml」として保存し編集をします。
1 2 3 4 5 |
<Autocompletions> <Autocompletion term="cake" type="1" language=""/> <Autocompletion term="strawberry.*" type="2" match="2" language=""/> <Autocompletion term="vanilla" type="2" language=""/> </Autocompletions> |
このオートコンプリートのXML例を利用して、Autocompletion属性を追加していくことで、
目的とするオートコンプリートの語句を一括して登録することができます。
ただし、CGSのオートコンプリートのヘルプに記載されている通り、必ずしも表示がされる保証はありません。
注: オートコンプリートを有効にしても特定の語句の表示が保証されるわけではありません。
フォーマットで注意すべき点は以下のようなものです。
オートコンプリート属性値について
type
- 1は表示したいリストを追加する場合に利用する。
結果として「追加済み」に追加される - 2は自動でオートコンプリートに登録される語句で表示したくないものを登録する際に利用する。
結果として「除外済み」に追加される
match
- matchを2(正規表現)として指定する場合には、type指定は2である必要があり、除外リストの指定でしか利用できない。除外リストを登録する上で「除外パターン」として登録したい場合に、キーワードに対して 正規表現を用いた文字列で指定を行う。
結果として「除外パターン」に対して登録される。
language
- この属性は「未定義」として設定を行う必要があり、ここで言う未定義とは属性がないことを示すのではなく、「language=””」の定義を行う必要がある。
score(オプション)
- 「オプションの候補スコア」についてはオートコンプリートによる表示順序(ランキングスコア)を割り当てます。入力可能なスコアは0~10,000 の範囲で指定できます。スコアが大きいほど優先度が高くなり表示上の上位行に表示されます。
オートコンプリートのランク付け – カスタム検索 ヘルプ (引用抜粋)
オートコンプリートのランク付け
追加したカスタム オートコンプリートの表示順序を変更したい場合は、それぞれのオートコンプリートにランキング スコアを割り当てます。(中略)スコアは 0~10,000 の範囲で指定できます。オートコンプリートの数が少ない場合は、スコアを 1~10 に限定すると管理が容易です。後でオートコンプリートの数が増えてきた場合は、小数点を使うことで対応できます。
こうした条件を守ったうえで、XMLを定義することで一括して読み込みが行えるようになります。
指定方法に誤りがある場合にはインポート時にエラーとなり読み込むことができません。
独自のオートコンプリート定義の作成
オートコンプリートの追加編集については、Excelを利用した方法が便利です。
Excelを利用したXMLの編集方法については以下でご紹介しています。
Google™サイト内検索(カスタム検索エンジンv2)のXMLファイルをExcelで作成・編集する
サイト内に設置するカスタム検索エンジンのオートコンプリート定義で利用するリストは、
自分がサイト内で関連性の高いキーワードを登録してもいいでしょうし、
GoogleWebMastersToolsなどのコンテンツキーワードなどを元にしてもいいでしょう。
気にならないなら、検索キーワードを利用するのも1つかもしれませんが、
ダダ漏れな感じがしますので、あまりお勧めはしません。
上記のExcelを用いて作成したXMLファイルは以下のようなソースです。
Autocompletions_edit.xml
1 2 3 4 5 6 7 8 9 10 11 12 |
<Autocompletions> <Autocompletion term="a*e" type="2" language="" match="2"/> <Autocompletion term="アドセンス" type="2" language=""/> <Autocompletion term="algorhythnn" type="1" language="" score="1"/> <Autocompletion term="analytics" type="1" language="" score="2"/> <Autocompletion term="android" type="1" language="" score="3"/> <Autocompletion term="apache" type="1" language="" score="4"/> <Autocompletion term="blogger" type="1" language="" score="5"/> <Autocompletion term="cgi" type="1" language="" score="6"/> <Autocompletion term="chrome" type="1" language="" score="7"/> <Autocompletion term="class" type="1" language="" score="8"/> </Autocompletions> |
2行目の「a*e」の設定は正規表現を利用した除外バターン登録です。
3行目の「アドセンス」は完全一致の「除外済み」への登録です。
4行目以下のキーワードはすべて「追加済み」への登録です。
実際に読み込みを行うと、以下のように各設定に取り込まれます。
追加済み
除外済み
除外パターン
こうしてXMLファイルを利用して一括登録することで、膨大なオートコンプリートのキーワードを、
効率的にインポートし、表示できるように設定することができます。
「オートコンプリート語句が検索エンジンに表示され始めるまでに最大 2 時間ほどかかることがあります。」という、
表示されるまでのタイムラグがインポートした後の動作確認にはしんどい部分はありますが。
さいごに
多くの人がサイト内検索を利用してくれる場合には、
自動的にキーワードが蓄積されて表示されるはずですが、
そうした状況になるまでは、事前に表示したいキーワードをしっかり登録しておくことで、
見てくれたユーザーさんがより便利に使うことができ、喜んでもらえるかもしれません。
Google™はGoogle Inc. の登録商標(第4478963号及び第4906016号)です。
GoogleロゴはGoogle Inc. の国際登録商標です。
国際登録番号:881006及び926052及び1086299及び1091990及び1145934
Google AdSense™,AdSense™はGoogle Inc. の登録商標(第4899412号)です。
関連記事
-
Googleクラウドプリントが便利
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
(PC)Google+で不適切な投稿をするユーザーをスパム報告する
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
Google+の投稿を非Google+ユーザーに対してもメールで共有することができる
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
Google App Engineのバケットを他アプリのWordPressから参照する設定
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
Google™サイト内検索(カスタム検索エンジンv2)の設定
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
(Android)Google+プロフィールの画像を変更する手順
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
(Android)Google+でブロックしているユーザーを確認する
Google or AdMax Promotion(cel) 禁断の機能がau公 …
-
(結果のみ)Google™サイト内検索(カスタム検索エンジンv2)のレイアウト導入方法と実際動作
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
(PC)Googleアカウントで認証したアプリケーションを解除する方法
Google or AdMax Promotion(it) 禁断の機能がau公式 …
-
Google™Chrome(グーグルクローム)で最初のユーザーに入れない場合の対処法
Google or AdMax Promotion(it) 禁断の機能がau公式 …