Como filtrar e classificar resultados da pesquisa

Informações gerais

Para ajudar os usuários a acessar as páginas certas do seu site, o Mecanismo de Pesquisa Programável oferece operadores de pesquisa estruturados que permitem detalhar os subconjuntos de resultados com base nos dados estruturados encontrados nas suas páginas ou nos metadados associados às imagens nos seus sites.

Para a pesquisa de imagens, o Google usa dados estruturados nas suas páginas e metadados de imagem descobertos ao rastrear seu site. Recomendamos que todos os webmasters se familiarizem com nossas diretrizes para publicação de imagens.

  1. Pesquisa na Web
  2. Pesquisa de imagens
  3. Pesquisa estruturada no Elemento de Pesquisa Programável

Pesquisa na Web

Ao contrário do texto, que é uma sequência de palavras em formato livre, os dados estruturados são organizados logicamente em um conjunto de objetos com um conjunto de atributos. O Mecanismo de Pesquisa Programável extrai diversos dados estruturados para uso por operadores de pesquisa estruturados, incluindo datas, autores, classificações e preços. Esses são os mesmos dados disponíveis para uso em snippets personalizados. Além disso, o Mecanismo de Pesquisa Programável é compatível com dados estruturados em qualquer um destes formatos:

  • PageMap:um PageMap representa explicitamente os dados estruturados como DataObjects com atributos e valores, codificados como um bloco XML incorporado em uma página da Web. O Mecanismo de Pesquisa Programável disponibiliza todos os dados do PageMap bem formados aos operadores de pesquisa estruturada. Eles também podem ser usados em snippets personalizados.
  • Tags meta:o Google extrai o conteúdo selecionado de tags meta do formato <meta name="NAME" content="VALUE">. Uma tag meta no formato <meta name="pubdate" content="20100101"> pode ser usada com um operador de pesquisa no formato: &sort=metatags-pubdate.
  • Datas da página:o Google estima a data de uma página com base no URL, título, data de assinatura e outros recursos. Essa data pode ser usada com o operador de classificação com o tipo especial de dados estruturados date, como em &sort=date.
  • Dados de rich snippets:o Google também extrai um subconjunto dos dados de padrões públicos, como: para uso nos operadores de dados estruturados do Mecanismo de Pesquisa Programável. Por exemplo, para classificar páginas marcadas com o padrão de microformato hrecipe com base nas classificações, use &sort=recipe-ratingstars.

Mais informações sobre como fornecer dados estruturados.

Se as páginas incluírem dados estruturados, você poderá aplicar os operadores de pesquisa estruturada do Mecanismo de Pesquisa Programável para restringir as pesquisas a campos com valores de dados específicos, classificar estritamente por valores numéricos, direcionar para determinados valores em vez de classificar ou até mesmo restringir a um determinado intervalo numérico de valores.

O Mecanismo de Pesquisa Programável é compatível com os seguintes operadores de pesquisa em dados estruturados:

Voltar ao início

Filtrar por atributo

A filtragem por atributo permite selecionar três tipos de resultados:

  • Resultados com um DataObject anexado específico, como uma avaliação
  • Resultados com um DataObject com um determinado campo, como uma avaliação com uma faixa de preço.
  • Resultados com um valor específico de um campo, como uma avaliação com cinco estrelas.

Para filtrar por atributo, adicione um operador more:pagemap:TYPE-NAME:VALUE a uma consulta de pesquisa. Assim, os resultados da pesquisa ficam restritos a páginas com dados estruturados que correspondem exatamente a esse tipo, nome e valor. O Mecanismo de Pesquisa Programável converte até 200 atributos por página, começando com dados de mapa de página, seguidos por JSON-LD, microformato, metatags, além e microdados. Os atributos não podem ter mais de 128 caracteres. É possível generalizar esse operador omitindo VALUE para corresponder a todas as instâncias do campo nomeado ou omitindo -NAME:VALUE para corresponder a todos os objetos de um determinado tipo.

Para ver como o operador completo é construído a partir de dados estruturados, lembre-se do exemplo que usamos anteriormente:

[halloween more:pagemap:document-author:lisamorton]

Detalhando a restrição more:pagemap:document-author:lisamorton em mais detalhes, o operador more: é usado pelo Mecanismo de Pesquisa Programável para marcadores de refinamento, a parte pagemap: do refinamento nos instrui a refinar os resultados por atributos específicos nos PageMaps indexados, e os elementos restantes do operador (document-author e lisamorton) definem o conteúdo que a restrição detalha. Lembre-se do PageMap do exemplo:

<PageMap>
  <DataObject type="document">
    <Attribute name="title">The Five Scariest Traditional Halloween Stories</Attribute>
    <Attribute name="author">lisamorton</Attribute>
  </DataObject>
</PageMap>

O qualificador document-author: do operador nos pede para procurar o DataObject com o tipo document com um atributo chamado author. Essa chave de dados estruturados é seguida pelo valor lisamorton, que precisa corresponder exatamente ao valor do atributo a ser retornado em uma pesquisa com essa restrição.

more:p:document-author:lisamorton

Ao filtrar por atributo, é possível criar filtros mais complexos (e comandos mais curtos) usando uma consulta compacta. Por exemplo, você pode adicionar o seguinte PageMap para um URL:

    <pagemap>
      <DataObject type="document">
        <Attribute name="keywords">horror</Attribute>
        <Attribute name="keywords">fiction</Attribute>
        <Attribute name="keywords">Irish</Attribute>
      </DataObject>
    </pagemap>
  </page>

Para recuperar os resultados da consulta "Irlandês E ficção", use o seguinte:

more:p:document-keywords:irish*fiction

É equivalente a more:pagemap:document-keywords:Irish more:pagemap:document-keywords:fiction.

Para recuperar os resultados de "Irlandês AND (ficção OR terror)", use o seguinte:

more:p:document-keywords:irish*fiction,irish*horror

Voltar ao início

Filtrar por branch

Filtrar por ramificação é uma variação de filtrar por atributo que está disponível para JSON-LD, microformato e além. É o único tipo de filtro por atributo disponível para dados estruturados JSON-LD.

Se os dados estruturados não contiverem árvores ou só tiverem árvores sem filhos, as restrições serão as mesmas que filtrarem por atributo. No entanto, árvores com filhos têm restrições que contêm: type-name para cada nó da raiz até o nó da folha. Portanto, uma árvore em que:

  • A raiz é do tipo Evento
  • Uma criança é chamada de rating
  • Esse filho tem um tipo de AggregateRating.
  • O filho tem um atributo com o nome ratingCount e o valor 22.
Gera a restrição: more:pagemap:event-rating-aggregaterating-ratingcount:22 para a ramificação que termina na contagem de notas.

Como usar o filtro por atributo ou ramificação com outros recursos

Use essa sintaxe aberta para detalhar o conteúdo especificado no PageMaps nos documentos do seu site. Também é possível usar a mesma sintaxe com quase todos os outros tipos de dados estruturados aceitos pelo Google, exceto a data estimada da página. Você também pode usar esses operadores more:pagemap: com rótulos de refinamento ou elementos de consulta ocultos para filtrar os resultados por atributos importantes para seu aplicativo. Assim, os usuários finais não precisarão digitar esses qualificadores de restrição diretamente.

Você também pode omitir partes do operador de pesquisa. No exemplo acima, o PageMap especifica um DataObject do tipo document e um atributo do tipo author. Mas nem todas as páginas do site podem ser um documento, e nem todos os documentos podem ter um autor. Se você usar um operador no formato more:pagemap:document-author, os resultados retornados incluirão todas as páginas com um atributo author no DataObject document, independentemente do valor do atributo. Da mesma forma, more:pagemap:document retornará todos os resultados com PageMaps que tenham DataObjects do tipo document, independentemente dos campos nesse DataObject.

Tokenização de valores de texto para restrições

Os valores de atributos que contêm espaços, pontuação ou caracteres especiais quase sempre são divididos em tokens diferentes. Por exemplo, o valor do atributo "Mecanismo de Pesquisa Programável@google" seria dividido em três tokens separados: "personalizado", "pesquisa" e "google". Isso permite pesquisas em uma única palavra incorporada em uma sequência maior de palavras e pontuação, como uma descrição de produção. O Mecanismo de Pesquisa Programável extrairá até 10 tokens por string. Portanto, se o valor do atributo contiver mais de 10 palavras, talvez nem todos estejam disponíveis para restringir os resultados. Por exemplo, o PageMap a seguir inclui uma descrição de produção do Mecanismo de Pesquisa Programável:

<PageMap>
  <DataObject type="product">
    <Attribute name="description">Programmable Search Engine provides customized search engines</Attribute>
  </DataObject>
</PageMap>

A restrição a seguir encontraria todas as páginas com atributos product-description sobre "pesquisa":

[more:pagemap:product-description:search]

Mais regras para tokenizar valores de texto:

  • Valores de texto são convertidos em minúsculas para restrições.
  • Para strings com até seis tokens, uma restrição extra é gerada para toda a string, com espaços em branco substituídos por _, como please_attend.
  • Restrições separadas não são geradas para palavras de parada, palavras como o, a, mas e , portanto, que são menos úteis para a pesquisa. Portanto, o valor de texto "the main point" geraria restrições para main, point e the_main_point, mas não para the.
  • Somente as dez primeiras palavras no valor do texto são usadas para formar restrições.
  • Os caracteres de pontuação que não são tratados como delimitadores são convertidos em sublinhados, _.

Detalhamento de valores tokenizados usando várias restrições

Para um detalhamento maior, adicione outras restrições. Por exemplo, para acessar apenas páginas que descrevem os produtos do mecanismo de pesquisa, adicione as restrições:

[more:pagemap:product-description:search more:pagemap:product-description:engine]

A ordem das restrições more:pagemap: não é significativa. Os tokens são extraídos de um valor de atributo para um conjunto não ordenado.

Essas restrições são combinadas por padrão com um "AND". No entanto, você também pode combiná-las com um operador OR para ter resultados correspondentes a qualquer uma das restrições. Por exemplo, esta é uma pesquisa que corresponderia a conteúdo de pesquisa ou jogo:

[more:pagemap:product-description:search OR more:pagemap:product-description:game]

Uma exceção à tokenização é referente a valores de atributo que são URLs. Como os tokens dos URLs têm utilidade marginal, não geramos nenhum token a partir de valores de atributo que são URLs válidos.

Em alguns casos, por exemplo, quando os tokens curtos são frequentemente encontrados juntos, o Mecanismo de Pesquisa Programável pode combiná-los para criar supertokens. Por exemplo, se os tokens "Presidente" e "Obama" aparecem com frequência um ao lado do outro, o Mecanismo de Pesquisa Programável pode criar o supertoken "president_obama". Como resultado, [more:pagemap:leaders-name:president_obama] retornará os mesmos resultados que [more:pagemap:leaders-name:president AND more:pagemap:leaders-name:obama].

Outra exceção principal da tokenização com base em pontuação é a barra "/" quando ela separa números. Os valores de atributos da forma "NUMBER/NUMBER" ou "NUMBER/NUMBER/NUMBER" são tratados como tokens contíguos únicos. Por exemplo, "3.5/5.0" e "09/23/2006" são tratados como tokens únicos. Por exemplo, para pesquisar um atributo com o valor "2006/09/23", use a restrição:

[more:pagemap:birth-date:2006/09/23]

A mesclagem com base em barras só funciona quando a barra está entre números sem espaços. Espaços entre a barra e o número resultam na criação de tokens separados. Além disso, os números unidos por barras precisam corresponder exatamente. O operador "Filtrar por atributo" não interpreta esses valores como frações ou datas. Os outros operadores de pesquisa estruturados do Mecanismo de Pesquisa Programável, como Sort by Attribute e Restrict to Range, interpretam esses números como frações e datas. Consulte a documentação sobre Como fornecer dados estruturados para mais detalhes.

Voltar ao início

Restringe de JSON-LD

JSON-LD é um formato padrão e eficiente para dados estruturados. Os dados são formatados como JSON e colocados em uma tag <script> com type="application/ld+json".

O código a seguir é um pequeno trecho de HTML com JSON-LD simples:

<script type="application/ld+json">
      {
        "@id": "http://event.example.com/events/presenting-foo",
        "@type": "http://schema.org/AggregateRating",
        "http://schema.org/ratingCount": "22",
        "http://schema.org/ratingValue": "4.4",
        "http://schema.org/itemReviewed": {
          "@type": "http://schema.org/Event",
          "http://schema.org/description": "Please attend.",
          "http://schema.org/name": "Presenting Foo",
          "http://schema.org/startdate": "2022-05-24",
          "http://schema.org/location": "Back room"
        }
      }
</script>

Ele vai gerar as seguintes restrições:

  • more:pagemap:aggregaterating-ratingcount:22
  • more:pagemap:aggregaterating-ratingvalue:4.4
  • more:pagemap:aggregaterating-itemreviewed-event-description:please_attend
  • more:pagemap:aggregaterating-itemreviewed-event-description:please
  • more:pagemap:aggregaterating-itemreviewed-event-description:attend
  • more:pagemap:aggregaterating-itemreviewed-event-name:presenting_foo
  • more:pagemap:aggregaterating-itemreviewed-event-name:presenting
  • more:pagemap:aggregaterating-itemreviewed-event-name:foo
  • more:pagemap:aggregaterating-itemreviewed-event-startdate:2022-05-24
  • more:pagemap:aggregaterating-itemreviewed-event-location:back_room
  • more:pagemap:aggregaterating-itemreviewed-event-location:back
  • more:pagemap:aggregaterating-itemreviewed-event-location:room

Para JSON-LD, geramos restrições apenas para todo o caminho da raiz. Consulte Filtrar por ramificação. No entanto, uma raiz de uma árvore JSON-LD tem nós de folha como filhos. As restrições resultantes têm a mesma forma que as restrições de atributo. Algumas das restrições no exemplo acima são formadas a partir de nós de folha na raiz e assumem a forma da restrição de atributo (type-name-value), como: more:pagemap:aggregaterating-ratingcount:22

Observação:outros formatos de dados estruturados permitem strings de até 128 bytes. No entanto, para JSON-LD, todas as strings são truncadas para cerca de 50 caracteres. Assim, você evita que a string termine no meio da palavra. Dependendo do tamanho da palavra, isso pode limitar o número de tokens gerados pela string de maneira mais estrita do que o limite a dez tokens.

Voltar ao início

Ordenar por atributo

Às vezes, não é suficiente limitar uma pesquisa a um tipo específico de resultado. Por exemplo, em uma pesquisa por avaliações de restaurantes, convém mostrar os restaurantes com as melhores avaliações no topo da lista. Para isso, use o recurso de classificação por atributo do Mecanismo de Pesquisa Programável, que muda a ordem dos resultados com base nos valores dos atributos de dados estruturados. A classificação é ativada ao adicionar um parâmetro de URL &sort=TYPE-NAME:DIRECTION ao URL de solicitação no Mecanismo de Pesquisa Programável. Assim como na pesquisa estruturada, a classificação por atributo depende dos dados estruturados das suas páginas. No entanto, ao contrário da pesquisa estruturada, a classificação exige que o campo tenha uma interpretação numérica, como números e datas.

Na forma mais simples, você especifica um tipo de dado estruturado com base em um tipo de objeto de dados e no nome do atributo em um PageMap e o adiciona ao URL da solicitação como &sort=TYPE-NAME. Por exemplo, para classificar por data em uma página que representa os dados como tipo date e nome sdate, use a seguinte sintaxe:

https://www.google.com/cse?cx=000525776413497593842:aooj-2z_jjm&q=comic+con&sort=date-sdate

Por padrão, isso realiza uma classificação rígida em ordem decrescente, ou seja, os resultados da pesquisa são ordenados estritamente pela data, com as datas mais recentes (que se traduzem nos maiores números) ordenadas primeiro. Se você quiser alterar a ordem de classificação para crescente, anexe um :a ao campo ou um :d para especificar explicitamente a ordem decrescente. Por exemplo, para mostrar primeiro os resultados mais antigos, use uma restrição da forma:

https://www.google.com/cse?cx=000525776413497593842:aooj-2z_jjm&q=comic+con&sort=date-sdate:a

Os resultados classificados do mecanismo são apresentados com base no valor dessas páginas no PageMaps para esse DataObject e Attribute. As páginas que não têm o PageMaps, esse tipo DataObject ou um valor analisável para esse atributo não serão exibidas em uma classificação rígida. Nos exemplos acima, as páginas sem um atributo date-sdate não vão aparecer nos resultados. A classificação forçada não pode ser combinada com o recurso "Direcionar por atributo" descrito na próxima seção, mas pode ser combinada com Filtrar por atributo e Restringir ao intervalo.

Voltar ao início

Polarização por atributo

Às vezes, você não quer excluir resultados que não tenham valor. Por exemplo, se você quer pesquisar culinária libanesa; é possível corresponder uma variedade de restaurantes diferentes, do libanês puro (mais relevante) ao grego (menos relevante). Nesse caso, é possível usar o viés forte ou fraco, que promoverá de forma forte ou fraca os resultados que têm seu valor, mas não excluirá os resultados que não o dão. Especifique um viés forte ou fraco anexando um segundo valor após a direção de classificação: &sort=TYPE-NAME:DIRECTION:STRENGTH, :s para viés forte ou :w para viés fraco (e :h para classificação forçada, embora adicionar :h seja opcional por ser o padrão). Por exemplo, adicionar um forte viés garante que os restaurantes mediterrâneos com melhor classificação superem os piores restaurantes mediterrâneos, mas é improvável que eles superem uma correspondência exata em um restaurante libanês:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-rating:d:s

Vários vieses podem ser combinados usando o operador de vírgula:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-rating:d:s,review-pricerange:d:w

A ordem dos vieses não importa. No entanto, a classificação forçada não pode ser combinada com qualquer outra, já que aplica uma ordem estrita. O último operador de classificação que você especificar na lista modificará todos os operadores de classificação e viés anteriores.

Voltar ao início

Restringir ao intervalo

Para incluir resultados entre um intervalo de valores ou acima ou abaixo de um valor, use uma restrição de intervalo. As restrições de intervalo são especificadas por um :r anexado ao nome do atributo, seguido pelos limites superior e inferior dos valores do atributo: &sort=TYPE-NAME:r:LOWER:UPPER. Por exemplo, para incluir somente avaliações escritas entre março e abril de 2009, especifique uma restrição de intervalo de:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-date:r:20090301:20090430

Para o operador "Restringir ao intervalo", o Google aceita números no formato flutuante e datas no formato ISO 8601 YYYYMMDD sem traços.

Não é necessário especificar um limite superior ou inferior. Por exemplo, para especificar somente datas anteriores a 2009, escreva:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=review-date:r::20091231

Para incluir apenas classificações superiores a 3 estrelas, use o seguinte:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars:r:3.0

Os intervalos são inclusivos e podem ser combinados com o operador vírgula entre si ou com uma classificação ou um ou mais critérios de viés. Observe que a combinação de uma restrição de intervalo com critérios de classificação e de viés resultará em apenas uma classificação de itens com valores no intervalo. Por exemplo, para classificar somente itens com três ou mais estrelas, use o seguinte:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars,rating-stars:r:3.0

Você pode classificar um critério e restringir por intervalo a outro. Por exemplo, para classificar apenas os itens revisados no mês de outubro, use o seguinte:

https://www.google.com/cse?cx=12345:example&q=lebanese+restaurant&sort=rating-stars,review-date:r:20101001:20101031

Pesquisa de imagens

Quando você ativa a pesquisa por imagens no seu mecanismo, o Google exibe os resultados de imagens em uma guia separada. É possível ativar a pesquisa de imagens usando o painel de controle do Mecanismo de Pesquisa Programável ou atualizando o arquivo context.xml.

A Pesquisa de imagens depende das informações que o Google descobre ao rastrear seu site. Para melhorar a forma como suas imagens aparecem nos resultados da pesquisa (tanto no Mecanismo de Pesquisa Programável quanto na Pesquisa Google na Web), conheça as diretrizes de publicação de imagens do Google.

Filtrar por atributo da imagem

Assim como a Pesquisa Google na Web, a pesquisa por imagens é compatível com atributos como src, alt e title.

Voltar ao início

Pesquisa estruturada no Elemento de Pesquisa Programável

Os recursos de pesquisa estruturada também podem ser usados com o Elemento de Pesquisa Programável do Google. Assim como os operadores expressos nos parâmetros de consulta ou URL, a pesquisa estruturada no elemento primeiro exige que as páginas que você está pesquisando sejam marcadas com os atributos correspondentes. Em seguida, o operador sort do elemento de Pesquisa Programável combinado com operadores more:pagemap: na consulta vai classificar ou restringir os resultados da pesquisa adequadamente.

Por exemplo, o SignOnSanDiego.com, um portal de notícias da Califórnia, usa o elemento de Pesquisa Programável para renderizar matérias recentes com fotos nos resultados:

Para garantir que os leitores vejam não apenas as notícias mais relevantes, mas também atualizadas, a SignOnSanDiego usa a Bias by Attribute com um peso "forte" em relação a datas de publicação recentes. O SignOnSanDiego implementa esses atributos de data com o PageMaps. Um usado pelo SignOnSanDiego é semelhante ao seguinte:

<!--
  <PageMap>
    <DataObject type="date">
      <Attribute name="displaydate" value="Wednesday, August 25, 2010"/>
      <Attribute name="sdate" value="20100825"/>
    </DataObject>

    <DataObject type="thumbnail">
      <Attribute name="src" value="http://media.signonsandiego.com/img/photos/2010/08/25/635a63e9-f4a1-45aa-835a-ebee666b82e0news.ap.org_t100.jpg"/>
      <Attribute name="width" value="100"/>
    </DataObject>
  </PageMap>
  -->

Para aplicar a classificação por atributo a esse campo, defina a opção sort no código de pesquisa do elemento de pesquisa programável, conforme mostrado abaixo:

...
<div class="gcse-search" sort_by="date-sdate:d:s"></div>
...

Assim como o parâmetro de URL &sort= descrito acima, a opção de classificação no elemento de Pesquisa Programável <div class="gcse-search" sort_by="date-sdate:d:s"></div> usa um nome de atributo combinado, como date-sdate, e vários parâmetros opcionais separados por dois pontos. Nesse caso, o SignOnSanDiego especificou a classificação em ordem decrescente d usando a variação s de viés forte do operador. Se você não fornecer qualificadores, o padrão será usar uma ordem decrescente com uma classificação rígida, assim como no caso do operador de URL.

A opção de classificação também ativa o recurso Restringir por intervalo. Por exemplo, um site como o SignOnSanDiego pode permitir que os usuários pesquisem artigos publicados entre 25 de agosto e 9 de setembro de 2010. Para implementar isso, defina as opções de classificação como date-sdate:r:20100825:20100907. Isso usa novamente o nome do atributo combinado date-sdate, mas se restringe ao intervalo r dos valores especificados 20100825:20100907. Assim como no parâmetro de URL, é possível omitir o item superior ou inferior do intervalo na opção sort do Elemento de Pesquisa Programável.

Outro recurso poderoso da opção de classificação é que você pode combinar Classificar por atributo e Restringir por intervalo. É possível combinar vários operadores na opção de classificação usando uma vírgula. Por exemplo, para combinar o forte viés da SignOnSanDiego com a restrição de data acima, especifique date-sdate:d:s,date-sdate:r:20100825:20100907. Esse recurso pode combinar atributos distintos. Por exemplo, um site de avaliação de filmes pode exibir os filmes mais bem avaliados lançados na última semana com a opção review-rating,release-date:r:20100907:.

Consulte esta página para ver todos os atributos compatíveis.

Você também pode usar o recurso Filtrar por atributo com o Elemento de Pesquisa Programável. Vejamos o exemplo anterior com páginas que tinham atributos linked-blog. Para criar um controle de pesquisa personalizado que retornava somente páginas vinculadas para usar o código a seguir e injetar um operador more:pagemap:linked-blog:blogspot em cada consulta:

...
<div class="gcse-search" webSearchQueryAddition="more:pagemap:linked-blog:blogspot"></div>
...

Esse método é relativamente inflexível, porque adiciona uma restrição a todas as consultas emitidas por esse controle. Para ver outras opções, consulte a documentação sobre o Elemento da Pesquisa Programável.

Voltar ao início

Como explorar outros recursos

Os recursos de pesquisa estruturada são um conjunto avançado de opções que oferecem controle total sobre o app de pesquisa. Assim, você pode usar atributos personalizados para ordenar e restringir os resultados da pesquisa de maneira muito eficaz para os usuários. A pesquisa estruturada também funciona bem com outros recursos do Mecanismo de Pesquisa Programável, como snippets de resultados personalizados. Para mais informações: