2012-05-07 3 views
0

ребята.Google CSE - поле поиска, которое перенаправляет на страницу с результатами

Я немного запутался в руководстве Google CSE и не могу понять некоторые из его основных функций.

Итак, я создал бесплатный пользовательский профиль поиска и все, что я получил, это единственный фрагмент кода, это один:

<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> 

Этот фрагмент кода создает Google пользовательские элементы управления поиска в указанном дел. Вот почему этот фрагмент, вероятно, будет расположен на странице результатов поиска, например. г. www.site.com/search.html

Но то, что я собираюсь реализовать, - это окно поиска на боковой панели на каждой странице моего сайта. Пользователь может вводить поисковый запрос в это поле поиска, где бы он ни находился, и перейти прямо к странице результатов www.site.com/search.html с набором ожидающих его матчей.

Как я могу это сделать?

Просматривая руководство не имеет для меня никакого эффекта, я что-то упускаю, но не могу понять, что именно ... Спасибо!

ответ

0

Поиск google работает, получая поисковый запрос из параметра URL. Вам просто нужно создать форму, в которой сообщения получат параметры на странице результатов. Имя вашего поля поиска должно соответствовать одному в строке 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)

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

customSearchControl.draw('google_search'); 

    <? if (isset($keyword)) { ?>  
    customSearchControl.execute('<?=$keyword?>'); <? } ?>  
    } 
google.setOnLoadCallback(OnLoad); 
</script> 
Смежные вопросы