2012-05-07 21 views
0

人。Google CSE - 検索結果のページにリダイレクトする検索ボックス

Google CSEのマニュアルとちょっと混乱していて、基本機能の一部を理解できません。

だから、私は無料のカスタム検索プロファイルを作成しているし、私が得たすべてが、この1のみコードスニペットです:

<div id="cse" style="width: 100%;">Loading</div> 
<script src="http://www.google.com/jsapi" type="text/javascript"></script> 
<script type="text/javascript"> 
    google.load('search', '1', {language : 'ru', style : google.loader.themes.V2_DEFAULT}); 
    google.setOnLoadCallback(function() { 
    var customSearchOptions = {}; 
    var googleAnalyticsOptions = {}; 
    googleAnalyticsOptions['queryParameter'] = 'q'; 
    googleAnalyticsOptions['categoryParameter'] = ''; 
    customSearchOptions['googleAnalyticsOptions'] = googleAnalyticsOptions; var customSearchControl = new google.search.CustomSearchControl(
     '001098741616107095995:xeqdxoqdue8', customSearchOptions); 
    customSearchControl.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET); 
    customSearchControl.draw('cse'); 
    }, true); 
</script> 

このコードは、指定したdivの中にGoogleカスタム検索コントロールを作成します。そのため、このスニペットはおそらく検索結果ページに配置されます。 g。 www.site.com/search.html

しかし、私が実装するつもりは私のウェブサイトの各ページのサイドバーにある検索ボックスです。ユーザーは、彼がどこにいてもその検索ボックスに検索クエリを入力して、彼を待っている試合のセットをwww.site.com/search.htmlの結果ページに直接表示することができます。

どうすればいいですか?取扱説明書を見ると

は私にとっては効果がありません、私は何かが欠けているんだけど、まさに... 感謝を把握することはできません!

答えて

0

Google検索は、URLパラメータから検索クエリを取得することによって機能します。結果ページにパラメータを投稿するフォームを作成するだけです。検索フィールドの名前は私のために働いた何かここwww.yoursite.com?q=your+search

<form action="http://www.yoursite.com/resulspage" method="get"> 
Search: <input type="text" name="q" /> 
<input type="submit" value="Seacrh" /> 
</form> 
+0

お返事ありがとうございます!私はいくつかのページ(domain.com/search)に自分の質問のコードを置き、domain/com/search?q = php + cli + appのような手動要求を行い、ページがロードされた後、レンダリングされた空の検索プロンプト。検索は実行されませんでした...私のコードは、外部クエリを使用することができないウィジェットのようにしか動作しないようです。多分それは間違ったコードですか? – CodingHamster

0

のような通常のq URLバーにいずれかと一致する必要があります。

SRC = "https://www.google.com/jsapi"> .........

customSearchControl.draw('google_search'); 

    <? if (isset($keyword)) { ?>  
    customSearchControl.execute('<?=$keyword?>'); <? } ?>  
    } 
google.setOnLoadCallback(OnLoad); 
</script> 
を(私が正しくあなたのQを理解している場合)
関連する問題