Сортировать результаты пользовательского поиска Google по дате - PullRequest
0 голосов
/ 30 мая 2011

Я нахожусь в процессе миграции Google Custom Search Engine, чтобы использовать CustomSearchControl для замены устаревшего API WebSearch, и одно из требований заключается в сортировке результатов предложения по дате. Но до сих пор я не мог понять, как сказать Google отсортировать результаты по последней дате, прежде чем вернуть предложение. Пример кода выглядит следующим образом:

var refinement="Support";
.....
switch(product)
{
    case "10000":
        refinement = "Support1";
        break;
    case "10002":
        refinement = "Support1";
        break;
    case "10001":
        refinement = "Support2";
        break;
    default:
        break;
}

var customSearchControl = new google.search.CustomSearchControl('cseId');
customSearchControl.setSearchStartingCallback(this, function(control, searcher, query) {
    searcher.setQueryAddition('more:' + refinement);
});

customSearchControl.setResultSetSize(7);
customSearchControl.draw('entries');
......

Я пробовал метку недавности для сортировки результатов, но она не работает:

customSearchControl.setSearchStartingCallback(this, function(control, searcher, query) {
    //searcher.setQueryAddition('more:recent3');
    searcher.setQueryAddition('more:' + refinement + ', more:recent3');
});

И я также пытался сортировать по атрибутам, но он тоже не работает:

var options = {};
options[google.search.Search.RESTRICT_EXTENDED_ARGS] = {'sort': 'date-sdate:d:s'}; //Tried to use other date format but it doesn't help

var customSearchControl = new google.search.CustomSearchControl('cseId', options);

Возможно, сортировка по атрибутам не будет работать, потому что у нас нет атрибутов, объявленных в нашей веб-документации. Таким образом, есть ли какой-либо другой способ, который позволяет нам указывать Google сортировать результаты поиска по дате?

1 Ответ

2 голосов
/ 27 января 2012

Мне попалось следующее:

http://code.google.com/intl/nl-NL/apis/customsearch/docs/js/cselement-reference.html

options[google.search.Search.RESTRICT_EXTENDED_ARGS] = {
  'lr': 'lang_it',
  'sort': 'date'
};
var customSearchControl = new google.search.CustomSearchControl(id, options);

Надеюсь, это поможет, если проблема все еще существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...