WebSite X5Help Center

 
Dietmar W.
Dietmar W.
User

PHP Skript um Bewertungen auch bei Google sichtbar zu machen  de

Autor: Dietmar W.
Besucht 2628, Followers 2, Geteilt 0  
Tags:: php,version

Hallo ich mal wieder, vielleicht könnt Ihr mir auch bei diesem Problem helfen.

Ich möchte ein PHP Skript auf meine seite einbinden, damite ich meine Bewertungen auch bei Google sichtbar habe, mehr infos hier https://www.provenexpert.com/de/google-sterne/

Wie bekomm ich das hin.

Gepostet am
6 ANTWORTEN - 1 NüTZLICH
Andreas S.
Andreas S.
Moderator

Kommt darauf an was PRovenexpert für einen Code zur Verfügung stellt! Vielleicht braucht man die php Datei nur auf den Server laden, oder man bindet es vor dem HTML Tag ein! Wie gesagt kommt auf den Code an !

HAben die keine genaue Anleitung dabei?

Mehr lesen
Gepostet am von Andreas S.
Dietmar W.
Dietmar W.
User
Autor

<?php/** * ProvenExpert (https://www.provenexpert.com) * * for PHP 5.3 and newer versions * * Contact : *** */// API authentication$yourApiId = '1tGA2VKBkSUpmqGB1xGpmAwpmHQZ08Jp'; $yourAPIKey = 'L2H5AzIzMGV4ZGx2AJExAGuvAmLmZQH1ZTIuLGuzZzL'; $apiUrl = 'https://www.provenexpert.com/api_rating_v2.json'; // cache options$errorFile = '/provenexpert_error.txt'; $cacheFile = '/provenexpert_1181dd2bf524e4e94a33a8ebd7816b31.json'; $cachePath = dirname($_SERVER['SCRIPT_FILENAME']) . $cacheFile; $cachingTime = 3600; // in seconds$scriptVersion = '1.7'; if (! file_exists($cachePath)) { @touch($cachePath, $cachingTime); @chmod($cachePath, 0666); } // check if user ca write the cache file, otherwise use the system temp directoryif (! is_writable($cachePath)) { $cachePath = sys_get_temp_dir() . $cacheFile; if (! file_exists($cachePath)) { @touch($cachePath, $cachingTime); @chmod($cachePath, 0666); } } if (function_exists('curl_init')) { try { // check if a cache file exists and its age inside the caching time rangeif (! file_exists($cachePath) || time() - filemtime($cachePath) > $cachingTime) { // init curl handler$curlHandler = curl_init(); // set curl options curl_setopt($curlHandler, CURLOPT_CONNECTTIMEOUT, 4); curl_setopt($curlHandler, CURLOPT_TIMEOUT, 4); curl_setopt($curlHandler, CURLOPT_RETURNTRANSFER, true); curl_setopt($curlHandler, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curlHandler, CURLOPT_URL, $apiUrl . '?v=' . $scriptVersion); curl_setopt($curlHandler, CURLOPT_USERPWD, $yourApiId . ':' . $yourAPIKey); if (defined('CURLOPT_IPRESOLVE') && defined('CURL_IPRESOLVE_V4')) { curl_setopt($curlHandler, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4); } // send call to api$json = curl_exec($curlHandler); if ($json === false) { // curl error$errorMessage = 'curl error (' . date('c') . ')'; if (file_exists($cachePath)) { $errorMessage .= PHP_EOL . PHP_EOL . 'last call: ' . date('c', filemtime($cachePath)); } $errorMessage .= PHP_EOL . PHP_EOL . curl_error($curlHandler); $errorMessage .= PHP_EOL . PHP_EOL . print_r(curl_version(), true); @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); $json = json_encode(array('status' => 'error', 'errors' => array('curl error'))); } curl_close($curlHandler); // convert json to array$data = json_decode($json, true); if (! is_array($data)) { // json format is wrong$errorMessage = 'json error (' . date('c') . ')' . PHP_EOL . PHP_EOL . $json; if (file_exists($cachePath)) { $errorMessage .= PHP_EOL . PHP_EOL . 'last call: ' . date('c', filemtime($cachePath)); } @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); $data = array('status' => 'error', 'errors' => array('json error')); $json = json_encode($data); } if ($data['status'] == 'success') { if (is_writable($cachePath)) { // save data in cache file @file_put_contents($cachePath, $json); } else { echo('<!-- file access error [v' . $scriptVersion . '] -->'); } } elseif(! in_array('wrongPlan', $data['errors'])) { if (file_exists($cachePath)) { // it used the old data$tmp = json_decode(file_get_contents($cachePath), true); if (is_array($tmp)) { $data = $tmp; touch($cachePath, time() - round($cachingTime / 10)); echo('<!-- from cache because errors [v' . $scriptVersion . '] -->'); } } else { echo('<!-- no caching -->'); } } } else { // get data from cache file$infoTime = $cachingTime; if (file_exists($cachePath)) { $infoTime = ($cachingTime - (time() - filemtime($cachePath))) . '/' . $infoTime; } echo('<!-- from cache (' . $infoTime . ') -->'); $data = json_decode(file_get_contents($cachePath), true); } // print aggregate rating htmlif ($data['status'] == 'success') { echo($data['aggregateRating']); } else { // sets the file as outdated @touch($cachePath, $cachingTime); $errorMessage = 'response error'; if (isset($data['errors']) && is_array($data['errors'])) { $errorMessage .= ' (' . implode(', ', $data['errors']) . ')'; } $errorMessage .= ' [v' . $scriptVersion . ']'; echo('<!-- ' . $errorMessage . ' -->'); } } catch (Exception$e) { $errorMessage = 'exception' . PHP_EOL . PHP_EOL . $e->__toString(); @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); echo('<!-- exception error [v' . $scriptVersion . '] -->'); } } else { echo('<!-- no curl package installed [v' . $scriptVersion . '] -->'); } ?>

das wäre der Code

Mehr lesen
Gepostet am von Dietmar W.
Andreas S.
Andreas S.
Moderator

Das sieht man nur wenn man einen Account hat !

Aber wenn du den Code vor dem HTML Tag einbindest und die Seite dann auf PHP umstellst, müsste es doch gehen oder?

Mehr lesen
Gepostet am von Andreas S.
Dietmar W.
Dietmar W.
User
Autor

Wo finde ich bei Website x5 13 den HTML Tag, kannst du mir das bitte genauer erklären, bin echt schwer von Begriff, sorry :)

Auf dieser Seite finden Sie ein Skript, um die Google-Sterne an Ihrer Webseite anzeigen zu lassen. Das Skript ruft den aktuellen Bewertungsstand Ihres ProvenExpert-Profils ab und stellt diesen auf Ihrer Webseite als Rich Snippet in schema.org-Notation bereit. Dadurch kann der Google-Crawler Ihre Durchschnittsnote, Sterne und Bewertungsanzahl erfassen und in den Suchergebnissen an Ihrer Webseite anzeigen.

Das Skript muss auf Ihrem Webserver eingebunden werden. Voraussetzung ist, dass Ihr Webserver Skripte ausführen kann (z.B. PHP, Perl, Python). Vergewissern Sie sich hierüber gegebenenfalls in den Eigenschaften Ihres Hosting-Pakets.

HINWEIS: Bitte beachten Sie, dass Ihr Profil öffentlich zugänglich sein muss. Inhaltsverzeichnis Bitte lesen Sie folgende Anleitung zur Implementierung von Google-Sternen in Ihre Webseite.

Darstellung des Rich Snippets auf Ihrer Webseite Wählen Sie die Darstellung aus, die auf Ihrer Webseite angezeigt werden soll, bevor Sie das Skript zur Einbindung kopieren.
Das Rich Snippet muss auf Ihrer Webseite vollständig angezeigt werden. Falls Sie es verstecken, werden in den Suchergebnissen keine Google-Sterne angezeigt. 

Skript zur Anzeige von Google-Sternen (PHP) Wenn Sie eine PHP-basierte Webseite betreiben und das curl-Paket installiert ist, dann müssen Sie nur das folgende PHP-Skript an der gewünschten Stelle in den HTML-Body der Unterseiten einfügen, an der das Rich Snippet angezeigt werden sollen:

Mehr lesen
Gepostet am von Dietmar W.
Andreas S.
Andreas S.
Moderator

Laut der Beschreibung soll es auf der Seite angezeigt werden! Also musst du den Code in ein HTML-OBjekt kopieren !

Die Seite musst du aber dann bei den "Eigenschaften" Reiter "Erweitert" auf PHP umstellen !

Mehr lesen
Gepostet am von Andreas S.