2013-03-13 4 views
1

Я скопировал большую часть кода из документов Google, а затем использовал документацию для установки фильтра.Фильтровать результаты поиска Только для изображений PNG

  • Я не получаю какие-либо ошибки
  • Но FILETYPE_PNG не работает (the filetype never gets restricted)

Я использовал https://developers.google.com/custom-search/docs/structured_search#filetype

Кто-нибудь знает, что случилось с кодом?

Я также пробовал делать searcher.execute("Kobe Bryant"); - но он все еще не ограничивался только PNG.

google.load('search', '1', {language: 'en', style: google.loader.themes.MINIMALIST}); 
google.setOnLoadCallback(function() { 
    var customSearchOptions = {}; 
    var orderByOptions = {}; 
    orderByOptions['keys'] = [{label: 'Relevance', key: ''} , {label: 'Date', key: 'date'}]; 
    customSearchOptions['enableOrderBy'] = true; 
    customSearchOptions['orderByOptions'] = orderByOptions; 
    var imageSearchOptions = {}; 
    //imageSearchOptions['layout'] = LAYOUT_POPUP; -- layout popup causing errors for some reason 
    customSearchOptions['enableImageSearch'] = true; 
    customSearchOptions['disableWebSearch'] = true; 
    var customSearchControl = new google.search.CustomSearchControl('Youaintfindingoutwhatthisis', customSearchOptions); 
    customSearchControl.setResultSetSize(google.search.Search.SMALL_RESULTSET); 

    var searcher = customSearchControl.getImageSearcher(); 
    searcher.setRestriction(
    customSearchControl.getImageSearcher.RESTRICT_FILETYPE, 
    customSearchControl.getImageSearcher.FILETYPE_PNG 
); 

    var options = new google.search.DrawOptions(); 
    options.setAutoComplete(true); 
    customSearchControl.draw('cse', options); 
}, true); 

UPDATE

  • см мой ответ ниже

  • еще не знаю, что с LAYOUT_POPUP - я получаю неопределенную ошибку здесь

ответ

1

Хорошо, я понял это.

Документация мало вводит в заблуждение.

Вам понадобится следующий код, чтобы получить фильтрации для работы:

customSearchControl.setSearchStartingCallback(
    this, function(control, searcher, query) { 
     searcher.setQueryAddition("filetype:png OR filetype:PNG"); 
    } 
); 

Место это в конце файла JS. Надеюсь, это поможет кому-то еще бороться с документацией.

+0

@Jeremy Знаете ли вы, что не так с LAYOUT_POPUP? Я получаю неопределенную ошибку для этого по какой-то причине – GangstaGraham

+0

К сожалению, у меня нет опыта работы с этим. –

+0

Хорошо, все в порядке. – GangstaGraham

Смежные вопросы