Star Snippets Logo

snippets.com

Facilmente consultar Rich snippets online

Exemplos de integração


Geral

O projeto Star-Snippets é constituído por 3 elementos distintos que são apresentados conforme a sequência. Para obter a funcionalidade completa (avaliação -estrelas + Rich Snippets disponibilidade), os 3 elementos devem estar integrados.

HTML Snippet

O Snippet HTML serve para definir a posição na página, na qual mais tarde a classificação de estrelas deve ser exibida. Além disso o Snippet HTML possibilita configurar a aparência das estrelas por meio de parâmetros de configuração. No caso mais simples o trecho a seguir é suficiente para exibir uma avlaiação de Rich Snippet na página.

<body>
  ...
  <star-snippet></star-snippet>
  ...
</body>

Javascript Code

O código Javascript é utilizado para encontrar os trechos HTML e selecionar parâmetros de configuração e então integrar as estrelas no respectivo lugar e configuração desejada. Para que a integração não afete a velocidade da página, é recomendado integrar o código Javascript diretamente antes do Body Tag de fechamento (</body>).

Como a Página de possbilidades de configuração demonstra; o HTML Snippet juntamente com o subsequente código Javascript são suficientes para integrar uma ou muitas avaliações de estrelas (Ratings) em uma página. Com isso os usuários da página podem ver as avaliações de outros usuários, bem como deixar as suas próprias avaliações.

<body>
  ...
  <!-- star-snippets.com -->
  <script>
    (function() {
      function async_load(){			
        var s = document.createElement('script');
        s.type = 'text/javascript';
        s.async = true;
        s.src = 'http://star-snippets.com/script';
        //s.src = 'http://star-snippets.com/script?prevent_cache=' + new Date().getTime(); //opcionalmente também é possível desativar o Caching      
        var x = document.getElementsByTagName('script')[0];
        x.parentNode.insertBefore(s, x);
      }
      if (window.attachEvent)
        window.attachEvent('onload', async_load);
      else
        window.addEventListener('load', async_load, false);
    })();
  </script>
</body> <!-- integrar diretamente antes do body Tag de fechamento -->

Código PHP (Java, etc.)

O terceiro e último componente serve para gerar a partir das avaliações do usuário Rich Snippets para que sites de pesquisa como Google etc. exibam as avaliações nos resultados de busca. Com isso, a página recebe suficientes avaliações positivas adiantadamente, maior confiança na busca e, por este motivo, geralmente é clicado com mais freqüência.

Em princípio, é possível recarregar os Rich Snippet Tags usando Javascript (Ajax). No entanto, os Crawlers dos sites de pesquisa já precisam destes Tags na entrega da página e, portanto, os Rich Snippets recarregados via JavaScript (Ajax) são ignorados pelos sites de pesquisa. É possível integrar os Rich Snippets na entrega da página via PHP (ou uma linguagem de sua escolha), enviando uma consulta à star-snippets.com, que fornece a avaliação atual da página em pacotes Rich Snippet Tags. Em seguida, estes Tags precisam somente ser emitidos. A seguir são encontradas pelos Crawlers dos sites de busca e podem ser considerados no processamento dos resultados da pesquisa.

<body>
  ...
  <?php
    //parâmetro url deve estar de acordo com o parâmetro href do código javascript    
    $url = "http://star-snippets.com/rating?url=http://www.example.com";
			
    $title = "Página de exemplo";
			
    $description = "Uma descrição para minha página de exmplo";
    
    if($title != "")
    {
      $url .= "&name=".rawurlencode($title);
    }
    
    if($description != "")
    {
      $url .= "&description=".rawurlencode($description);
    }
    
    $timeout = 10;
    
    try {
    
      $streamContext = stream_context_create(array('http' => array('timeout' => $timeout)));
      
      $response = file_get_contents($url, false, $streamContext);

      if (!$response)
      {}
      else
      {
        echo $response;
      }
    } catch (Exception $ex) {
    }
			
  ?>
  ...
</body>

Aviso

Caso o Script acima cause um Erro/aviso pelo fato da função 'file_get_contents' estar indisponível no Host, você pode utilizar o seguinte código em seu lugar.

// Comente esta linha.
// $response = file_get_contents($url, false, $streamContext);

// Ao invés disso, utilize as seguintes linhas
$session = curl_init($url);
curl_setopt($session, CURLOPT_HEADER, false);  
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
curl_setopt($session, CURLOPT_TIMEOUT, $timeout);
$response = curl_exec($session);
curl_close($session);
  

Joomla (1.5, 1.6, 2.5, 3.0)

A integração em Joomla requer menor configuração em comparação com Padrão. A integração pode ser facilmente realizada instalando um plugin do Joomla. Clique no botão abaixo para fazer download do Rich Snippet Plugin.

Fazer download do Joomla Rich Snippet Plugin

Como alternativa, você pode realizar a integração do Rich Snippet manualmente, como descrito abaixo. Isto possibilita uma flexibiliade um pouco maior, mas também significa ter mais trabalho.

HTML Snippet

O HTML Snippet é integrado em qualquer posição (p. ex. artigo, banner, módulo, etc.).

<body>
  ...
  <star-snippet></star-snippet>
  ...
</body>

Javascript e código PHP

O código a seguir pode ser juntamente integrado diretamente antes do body Tag de fechamento no respectivo Joomla Template (index.php).

<body>
  ...
  
  <?php
    
    $doc = JFactory::getDocument();
    
    $url = "http://star-snippets.com/rating?url=".JURI::current();
    
    if($doc->getTitle() != "")
    {
      $url .= "&name=".rawurlencode($doc->getTitle());
    }

    if($doc->getDescription() != "")
    {
      $url .= "&description=".rawurlencode($doc->getDescription());
    }
    
    $timeout = 10;
    
    try {
      $streamContext = stream_context_create(array('http' => array('timeout' => $timeout)));
      
      $response = file_get_contents($url, false, $streamContext);

      if (!$response)
      {}
      else
      {
        echo $response;
      }
    } catch (Exception $ex) {
    }
			
  ?>

  <!-- star-snippets.com -->
  <script>
    (function() {
      function async_load(){			
        var s = document.createElement('script');
        s.type = 'text/javascript';
        s.async = true;
        s.src = 'http://star-snippets.com/script';
        //s.src = 'http://star-snippets.com/script?prevent_cache=' + new Date().getTime(); //opcionalmente também é possível desativar o Caching      
        var x = document.getElementsByTagName('script')[0];
        x.parentNode.insertBefore(s, x);
      }
      if (window.attachEvent)
        window.attachEvent('onload', async_load);
      else
        window.addEventListener('load', async_load, false);
    })();
  </script>
</body>

Aviso

Caso o Script acima cause um Erro/aviso pelo fato da função 'file_get_contents' estar indisponível no Host, você pode utilizar o seguinte código em seu lugar.

// Comente esta linha.
// $response = file_get_contents($url, false, $streamContext);

// Ao invés disso, utilize as seguintes linhas
$session = curl_init($url);
curl_setopt($session, CURLOPT_HEADER, false);  
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
curl_setopt($session, CURLOPT_TIMEOUT, $timeout);
$response = curl_exec($session);
curl_close($session);
  

WordPress

O Blog Software WordPress também pode facilmente integrar Rich Snippet por meio de instalação de Plugin WordPress. Clique simplesmente no botão abaixo, para fazer o download do Rich Snippet Plugin.

fazer download do WordPress Rich Snippet Plugin

Logo star-snippets.com