Star Snippets Logo

snippets.com

Rich snippets einfach online abfragen

Einbindungsbeispiele


Allgemein

Das Star-Snippets Projekt besteht aus 3 verschiedenen Komponenten, die nachfolgend der Reihe nach vorgestellt werden. Um den vollen Funktionsumfang (Sterne-Bewertung + Rich Snippets Verfügbarkeit) zu erhalten, müssen alle 3 Komponenten eingebunden werden.

HTML Snippet

Das HTML Snippet dient dazu die Stelle in der Seite zu definieren, an der das Sterne Ranking später angezeigt werden soll. Weiterhin ermöglicht das HTML Snippet das Aussehen der Sterne über Konfigurationsparameter anzupassen. Im einfachsten Fall reicht der folgende Schnipsel aus, um eine Rich Snippet Bewertung in der Seite anzuzeigen.

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

Javascript Code

Der Javascript Code wird verwendet, um die HTML Schnipsel in der Seite zu finden, deren Konfigurationsparameter auszulesen und dann die Sterne an der entsprechenden Stelle und der gewünschten Konfiguration einzubinden. Damit die Einbindung nicht die Seiten-Geschwindigkeit beeinflusst, wird empfohlen den Javascript Code direkt vor dem schließenden Body Tag (</body>) einzubinden.

Wie die Anpassungmöglichkeiten Seite zeigt, reichen HTML Snippet zusammen mit dem nachfolgenden Javascript Code aus, um ein oder beliebig viele Sterne Bewertungen (Ratings) in eine Seite zu integrieren. Somit können Nutzer der Seite Bewertungen anderer Nutzer einsehen, als auch eigene Bewertungen abgeben.

<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(); //optional kann das Caching auch unterbunden werden      
        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> <!-- direkt vor dem schließendem body Tag einbinden -->

PHP Code (Java, etc.)

Die dritte und letzte Komponente dient dazu, aus den Bewertungen der Nutzer Rich Snippets zu generieren, damit Suchmaschinen wie Google & Co. die Bewertungen bereits in der Suchergebnis-Liste anzeigen. Somit erhält die Seite, ausreichend positive Bewertungen vorausgesetzt, ein höheres Vertrauen bei der Suche und wird aus diesem Grund in der Regel häufiger geklickt.

Prinzipiell ist es möglich auch die Rich Snippet Tags per Javascript (Ajax) nachzuladen. Allerdings brauchen die Crawler der Suchmaschinen diese Tags bereits mit der Auslieferung der Seite, weshalb per Javascript (Ajax) nachgeladene Rich Snippets von den Suchmaschinen unberücksichtigt bleiben. Um die Rich Snippets bei Seitenauslieferung in die Seite zu integrieren, kann per PHP (oder einer Sprache ihrer Wahl) eine Anfrage an star-snippets.com gestellt werden, die die aktuelle Bewertung der Seite in Rich Snippet Tags verpackt liefert. Diese Tags müssen dann nur noch ausgegeben werden. Anschließend werden sie von den Suchmaschinen-Crawlern gefunden und können bei der Verarbeitung der Suchergebnisse berücksichtigt werden.

<body>
  ...
  <?php
    //url Parameter sollte mit dem href Parameter des Javascript Codes übereinstimmen    
    $url = "http://star-snippets.com/rating?url=http://www.example.com";
			
    $title = "Beispiel-Seite";
			
    $description = "Eine Beschreibung für meine Beispielseite";
    
    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>

Warnung

Falls das obige Script einen Fehler/eine Warnung erzeugen sollte, weil die Funktion 'file_get_contents' bei Ihrem Hoster nicht zur Verfügung steht, können Sie folgenden Code stattdessen verwenden.

// Kommentieren Sie diese Zeile aus.
// $response = file_get_contents($url, false, $streamContext);

// Verwenden Sie stattdessen die folgenden Zeilen
$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)

Bei der Einbindung in Joomla bedarf es weniger Anpassungen im Vergleich zum Standard. Die Einbindung kann sehr einfach über die Installation eines Joomla Plugins erfolgen. Klicken Sie einfach den nachfolgenden Button, um das Rich Snippet Plugin herunterzuladen.

Joomla Rich Snippet Plugin herunterladen

Alternativ dazu können Sie die Rich Snippet Integration natürlich auch wie nachfolgend beschrieben manuell erledigen. Dies ermöglicht etwas mehr Flexibilität, bedeutet allerdings auch mehr Aufwand.

HTML Snippet

Das HTML Snippet wird an beliebiger Stelle (bspw. Beitrag, Banner Modul, etc.) eingebunden.

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

Javascript und PHP Code

Der nachfolgende Code kann zusammen direkt vor dem schließendem body Tag im entsprechenden Joomla Template (index.php) eingebunden werden.

<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(); //optional kann das Caching auch unterbunden werden      
        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>

Warnung

Falls das obige Script einen Fehler/eine Warnung erzeugen sollte, weil die Funktion 'file_get_contents' bei Ihrem Hoster nicht zur Verfügung steht, können Sie folgenden Code stattdessen verwenden.

// Kommentieren Sie diese Zeile aus.
// $response = file_get_contents($url, false, $streamContext);

// Verwenden Sie stattdessen die folgenden Zeilen
$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

Auch in der Blog Software WordPress kann die Rich Snippet Einbindung sehr einfach über die Installation eines WordPress Plugins erfolgen. Klicken Sie einfach den nachfolgenden Button, um das Rich Snippet Plugin herunterzuladen.

WordPress Rich Snippet Plugin herunterladen

Logo star-snippets.com