このセクションでは、コア検索コントロールの基本操作とコントロールの習得に役立つサンプルをお見せします。
GdrawOptions オブジェクトの setDrawMode() メソッドが使われています。
GSearchControl オブジェクトの setResultSetSize() メソッド、または個々のサーチャー オブジェクトの同じメソッドが使われています。
GsearcherOptions オブジェクトの setExpandMode() メソッドが使われています。
GSearchControl のコンテキスト外で検索オブジェクトを使いたいこともあります。このサンプルは、まさにそれを行う方法を示しています。検索を開始し、検索が完了したら応答して、検索結果の HTML 表現を生成する方法を示します。
このセクションでは、結果セクションまたは検索フォームそれ自身の配置が重要である場合の、検索コントロールの使用法を示すサンプルを扱います。たとえば、多くのブログでは、検索フォームをサイドバーに置き、検索結果をページの中央部に置くのが一般的です。このセクションの例は、そうする方法を示しています。
GdrawOptions オブジェクトの setSearchFormRoot() メソッドを使って検索フォームの配置を制御する方法を示しています。これは、ブログで検索フォームをサイドバーに置き、検索結果をブログのメイン セクションに置く場合に使われる一般的なテクニックです。
GsearcherOptions オブジェクトの setRoot() メソッドが使われています。
このセクションでは GlocalSearch オブジェクトの使用法を表すサンプルを扱います。これらのサンプルで示される主要な点は、検索結果を特定の領域にスコープ設定するようにオブジェクトの中央点を設定する方法や、Google マップにプロットされる結果のソースとしてオブジェクトを使う方法があります。
directions リンクは、現在の検索中央点から検索結果への経路です。別の方法として、アプリケーションの側で、ユーザーが選択した場所と現在の検索結果との間の経路をリンクに表現することができます。このサンプルは、どのタイプの経路検索が表示されるかをアプリケーションでコントロールする方法を示しています。
staticMapUrl プロパティが含まれています。検索結果のサムネイル表現を提供したいだけの場合は、このプロパティを使うのが手早く、効率的です。サンプルは、このプロパティと、関連のサポート メソッドの使用法を示しています。
このセクションでは、サーチャーの setSiteRestriction() メソッドを使って、検索結果のセットを 1 つのサイトやカスタムのサーチエンジンにスコープ設定する使い方を示したサンプルを提供しています。GwebSearch、GblogSearch、GnewsSearch の各サーチャーはいずれもこの基本的なメソッドをサポートしていますが、カスタム検索エンジンへのスコープ設定をサポートしているのは GwebSearch だけです。
GwebSearch、GblogSearch、GnewsSearch の各オブジェクトの setSiteRestriction() メソッドの使用法を示しています。サイト制限検索では、多くの場合、検索結果セクション ヘッダーにカスタムのラベルを指定するのが有効です。検索結果にカスタムのスタイルを設定するとよい場合もあります。このいずれの関数も、setUserDefinedLabel() メソッドや setUserDefinedClassSuffix() メソッドを使うことでサポートされます。
setSiteRestriction() へのさまざまな呼び出しが、すべてカスタム検索エンジン ID を使って行われていることに注意してください。サンプルには、サイト制限と関係がない他のアイディアもいくつか含まれています。GSearchForm オブジェクトを使った複数の検索コントロールの駆動や、検索コントロールや検索結果のスタイルを設定し直すカスタム CSS ディレクティブの使用などです。
setSiteRestriction() の呼び出しで、コードで opt_refinement 引数を使うことで、カスタム検索エンジンの範囲内で 検索結果をさらに制限していることに注目してください。
site にオブジェクトを使い、crefUrl プロパティでカスタム検索エンジン定義ファイルの URL を指定していることに注意してください。
このセクションでは、検索結果クリッピングの使用法を表すサンプルを示します。これは、ユーザーが検索結果の下にあるリンクをクリックしたときに、その結果をアプリケーションに渡す機能です。このセクションには、この機能を実際に使ったいくつかのサンプルがあります。
setOnKeepHandler() メソッドです。これにより、各検索結果の下に、クリックするとターゲット ハンドラが呼び出されるリンクが表示されます。このサンプルでは、ターゲット ハンドルは結果の .html プロパティのディープ クローンを作り、次に現在のページにそれをアタッチします。
.html プロパティ以外の結果プロパティの使い方を示すことによって、クリッピングの基本を拡張しています。この場合、ユーザーが検索結果をクリップするごとにスプレッドシートに行が 1 行追加され、.title や .streetAddress を使って列が形成されます。プロパティまた、前のセクションで少し触れた、クリップされた検索結果を地図上にプロットする方法も示しています。
AJAX 検索は、非常に人気が高いブログの拡張手段です。ここでは、TypePad と Blogger での AJAX 検索の使用法を示す 2 つのサンプル ブログを構築しました。
このセクションには、上で示したいくつかのコンセプトを 1 つのサンプルに統合した、より高度なコード サンプルへのリンクがあります。これらのサンプルを参考にして、自由に活用してください。