Я не уверен, с чего начать с вашего кода, но с помощью нового фрагмента кода из генератора кодов Custom Search вы можете передать строку запроса в CustomSearchControl
.С кодом, заимствованным отсюда , должно сработать что-то вроде этого:
<div id="cse">Loading…</div>
<script src="http://www.google.com/jsapi"></script>
<script>
// Extract user's query from the URL
function getQuery() {
var url = '' + window.location;
var queryStart = url.indexOf('?') + 1;
if (queryStart > 0) {
var parts = url.substr(queryStart).split('&');
for (var i = 0; i < parts.length; i++) {
if (parts[i].length > 2 && parts[i].substr(0, 2) == 'q=') {
return decodeURIComponent(parts[i].split('=')[1].replace(/\+/g, ' '));
}
}
}
return '';
}
google.load('search', '1', {language:'en' });
google.setOnLoadCallback(function() {
var cseControl = new google.search.CustomSearchControl('ID_GOES_HERE');
cseControl.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET);
cseControl.draw('cse');
// Execute a query based on the query string
cseControl.execute(getQuery());
}, true);
</script>
Так, например, это войдет в вашу страницу cse.php
(хотя там нет PHP на данном этапе) и форма вашей начальной страницы что-то вроде:
<form action="cse.php" method="get">
<input name="q"> <input type="submit">
</form>