Star Snippets Logo

snippets.com

Demander des rich snippets simplement en ligne

Exemples d'intégration


Généralités

Le projet star-snippets comprend 3 composants différents qui sont présentés dans l'ordre ci-après. Afin de disposer de toutes les fonctions, (évaluation étoiles + Rich Snippets Disponibilité) les 3 composants doivent être intégrés.

Snippet HTML

Le snippet HTML sert à définir l'endroit de la page sur lequel l'étoile de classement sera affichée ultérieurement. De plus, le snippet HTML permet d'adapter l'aspect des étoiles avec Paramètres de configuration. Dans le plus simple des cas, le snippet suivant suffit pour afficher sur la page une évaluation rich snippet.

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

Javascript Code

Le code Javascript est utilisé pour trouver les extraits HTML de la page, lire leur Paramètres de configuration et intégrer ensuite les étoiles à l'endroit correspondant ainsi que la configuration souhaitée. Afin que l'intégration n'influence pas la vitesse des pages, il est recommandé d'intégrer le code Javascript directement devant la balise body fermante (</body>).

Comme l'indique Possibilités d'adaptation Page, le snippet HTML et le code Javascript suivant suffisent pour intégrer une ou de nombreuses étoiles d'évaluation (rating) sur une page. Les utilisateurs de la page peuvent ainsi consulter les évaluations d'autres utilisateurs et bonifier eux-mêmes la page.

<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(); //En option, la mise en cache peut être supprimée      
        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> <!-- intégrer directement devant la balise body fermante -->

PHP Code (Java, etc.)

Le troisième et dernier composant sert à générer à partir des évaluations des utilisateurs des Rich snippets afin que les moteurs de recherche tels que Google & Co. affichent déjà les évaluations dans la liste des résultats de recherche. La page obtient ainsi suffisamment d'évaluations positives à condition que l'on ait confiance accrue pendant la recherche ; en règle générale, les clics sont de ce fait plus fréquents.

En principe, il est possible de recharger les balises rich snippet avec Javascript (Ajax). Cependant, les robots des moteurs de recherche ont besoin de ces balises dès la livraison de la page, c'est pourquoi, les rich snippets téléchargés par Javascript (Ajax) ne sont pas pris en compte par les moteurs de recherche. Pour intégrer les rich snippets dans la page lors de la livraison de celle-ci, il est possible d'envoyer une demande à star-snippets.com par PHP (ou une langue de votre choix) qui livre l'évaluation actuelle de la page emballée dans des balises rich snippet. Ces balises doivent être seulement éditées. Ensuite, les rich snippet sont identifiés par les robots des moteurs de recherche et peuvent être pris en compte lors du traitement des résultats de recherche.

<body>
  ...
  <?php
    //le paramètre url doit concorder avec le paramètre href du code Javascript     
    $url = "http://star-snippets.com/rating?url=http://www.example.com";
			
    $title = "Exemple-de-page";
			
    $description = "Une description avec mon exemple de page";
    
    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>

Avertissement

Au cas où le script ci-dessus génère une erreur/un avertissement, parce que la fonction 'file_get_contents' n'est pas disponible sur votre hébergeur, vous pouvez utiliser au lieu de cela le code suivant.

// Veuillez commenter cette ligne.
// $response = file_get_contents($url, false, $streamContext);

// Veuillez utiliser au lieu de cela les lignes suivantes
$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)

Lors de l'intégration dans Joomla, les adaptations sont moins nombreuses comparé à Standard. L'intégration peut être réalisée très simplement en installant un plugin Joomla. Il suffit de cliquer sur le bouton suivant pour télécharger le plugin rich snippet.

Télécharger plugin rich snippet Joomla

En alternative, vous pouvez également effectuer l'intégration rich snippet manuellement comme cela est décrit ci-après. Cela permet d'avoir un peu plus de flexibilité, mais demande un peu plus d'efforts.

Snippet HTML

Le snippet HTML est intégré à un endroit quelconque (par ex. contribution, module de bannière, etc.).

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

Code Javascript et PHP

Le code suivant peut être intégré en même temps que la balise body fermante dans le modèle Joomla correspondant (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(); //En option, la mise en cache peut être supprimée      
        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>

Avertissement

Au cas où le script ci-dessus génère une erreur/un avertissement, parce que la fonction 'file_get_contents' n'est pas disponible sur votre hébergeur, vous pouvez utiliser au lieu de cela le code suivant.

// Veuillez commenter cette ligne.
// $response = file_get_contents($url, false, $streamContext);

// Veuillez utiliser au lieu de cela les lignes suivantes
$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

Dans le logiciel de blog WordPress, vous pouvez également réaliser l'intégration en installant tout simplement un plugin WordPress. Il suffit de cliquer sur le bouton suivant, pour télécharger le plugin rich snippet.

Télécharger le plugin rich snippet de WordPress

Logo star-snippets.com