Facebook Shares nach https Umstellung zurückholen

Die Umstellung von WordPress auf SSL bringt eigentlich nur Vorteile. Aber leider gehen dabei auch alle bisherigen Facebook Shares und Likes verloren. Denn für das soziale Netzwerk sind die http URL und die https URL 2 komplett verschiedene Seiten. Wie du dennoch die Shares wiederherstellen kannst, erkläre ich dir in diesem Beitrag.

In meinem Tutorial zur Umstellung auf HTTPS habe ich bereits erwähnt, dass es dabei zum Verlust der Share Counts kommt.
Ich selbst hätte mich damit abfinden können, aber für einige ist das ein Problem. Gerade langjährige Blogger, die viele geteilte Inhalte hatten, ärgern sich darüber. Daher habe ich mir die Sache näher angesehen.

Wieso werden die Facebook Shares nicht automatisch übernommen?

Suchmaschinen oder soziale Netzwerke bewerten den Wechsel von http zu https ähnlich wie eine Domainänderung. So muss man z.B. auch bei der Search Console die Webseite nach der SSL Umstellung als neue Property einreichen.

Bei Facebook sieht es ähnlich aus. Die Shares der alten URL (http) werden getrennt von den Shares der neuen URL (https) gezählt. Wenn die Seite nun nur noch über https zu erreichen ist, sind somit die alten Shares komplett weg. Facebook zeigt ausschließlich die Anzahl der der neuen Shares an.

Leider wird von Facebook selbst keine Möglichkeit angeboten, die Interaktionen zu übertragen. Aber mit einer manuellen Anpassung der Open Graph Informationen kann man die Facebook Shares zurückholen.

Open Graph Protocol

Über das Open Graph Protocol (OG) kannst du detaillierte Informationen zu deiner Seite an Social Networks übergeben. Wenn du ein SEO Plugin wie beispielsweise Yoast nutzt, werden diese Infos automatisch ausgegeben.

Im Quellcode eines Artikels sieht das dann so aus:

open graph info quellcode
So sehen die Open Graph Angaben im Quellcode für einen Artikel aus.

Hier siehst du alle Details zu deinen Beitrag wie beispielsweise:

  • Titel
  • Verfasser
  • URL
  • Datum
  • das zugeordnete Bild

Für die geteilten Inhalte ist vor allem das Tag og:url wichtig. Hier steht die bevorzugte URL, die beim Teilen oder Liken von Facebook gezählt werden soll.

Um die Shares vor der SSL Umstellung wiederherzustellen, musst du die og:url wieder auf die alte URL umstellen.

Also die aktuelle Beitrags-URL

<meta property="og:url" content="https://www.webtimiser.de/wordpress-portfolio-plugins-im-test/" />

wird auf die frühere Beitrags-URL umgeschrieben.

 

<meta property="og:url" content="http://new2.webtimiser.de/wordpress-portfolio-plugins-im-test/" />

 

Facebook Shares wiederherstellen

Wenn du Yoast SEO verwendest, kannst du über einen Hook die og:url anpassen. Dazu musst du folgenden Code (inspiriert von dieser Diskussion) in deine functions.php einfügen. Oder noch besser: du erstellst dafür ein seitenspezifischen Plugin.

Achtung: vor Änderung an functions.php und .htaccess solltest du ein Backup machen.

og:url umschreiben

function og_url_fb( $url ) {
global $post;
$pubDate = get_the_date( $d='U', $post->ID); // Artikel Datum
$sslDate = 1488240000; // Datum der Umstellung
if ((preg_match('/facebookexternalhit/i',$_SERVER['HTTP_USER_AGENT'])) &&
($pubDate < $sslDate) ){
return str_replace( 'https://', 'http://', $url );
 } else {
 return $url;
 }
}
add_filter( 'wpseo_opengraph_url', 'og_url_fb' );

 

Mit dieser Funktion wird folgendes erreicht:

Für alle Beiträge vor der Umstellung auf https wird ausschließlich für den Facebook Crawler die Beitrags-URL auf http gesetzt. Natürlich musst du noch den Wert für das Datum anpassen. Zur Umrechnung des Datums in den Unix-Timestamp, kannst du ein Online Tool wie z.B. Unixtime nutzen.

Facebook Crawler ansprechen

Um zu verhindern, dass eine Seite über http UND https erreichbar ist, wird ein 301 Redirect eingerichtet.
Damit aber der Facebook Bot noch die http-Version erreichen kann, musst du diesen von der Umleitung ausschließen.
Dazu musst du eine kleine Ergänzung in der .htaccess vornehmen.

 

#Umleitung http zu https
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_USER_AGENT} !(Facebot|facebookexternalhit/1\.1) [NC]
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Facebook Sharing debugger

Nachdem du den Cache deiner Seite geleert hast, kannst du mit dem Sharing debugger deinen Beitrag testen.

facebook sharing debugger
Im Sharing Debugger sind noch die unveränderten Angaben sichtbar

Wie du siehst, gibt es 0 Shares oder Likes. Auch die URLs beginnen noch mit https. Damit die Anpassungen wirksam werden, musst du auf Erneut scrapen klicken.

Facebook Shares sind wieder da!

Nach dem erneuten Einlesen des Artikels hat der Debugger die Angaben korrigiert. Wie gewünscht hat Facebook für diesen alten Artikel nun die alte URL mit vorhandenen Shares übernommen.

debugger - erneutes scrapen
Facebook hat die OG Angaben aktualisiert und die Shares korrigiert.

Wenn du noch weitere Beiträge scapen lassen möchtest, kannst du den Batch Invalidator nutzen.

batch invalidator
Hier kannst du mehrere URLs zum Scrapen eingeben

Share Counts prüfen

Wie viele Shares hat denn dein Artikel überhaupt? Am schnellsten kannst du das über diesen Link herausfinden:

http://graph.facebook.com/?id=hier kommt die vollständige URL hin

facebook share counts
Zeigt die Anzahl der Shares oder Kommentare an

Wie wirkt sich die Änderung auf SEO aus?

Die Umleitung der OG:URL wird ausschließlich von Facebook wahrgenommen. Suchmaschinen wie Google oder Bing werden nach wie vor die korrekte Canonical Einstellungen einlesen. Daher sehe ich keine negativen Folgen aus SEO Sicht.

Wenn du eine bessere oder einfachere Methode zur Wiederherstellung der Facebook Shares kennst, freue ich mich über deinen Kommentar.

Plugin-Alternative: Social Warfare Pro

Wem die manuellen Code-Anpassungen zu aufwändig sind, sollte sich die kostenpflichtige Variante von Social Warfare anschauen. Ich nutze es mittlerweile selbst und konnte dadurch mit 2 Klicks alle Shares zurückholen. Hier geht’s zur ausführlichen Vorstellung des Plugins:

share recovery
Mit Social Warfare Pro kannst Du Shares nach der SSL-Umstellung oder einer Domain-Änderung zurückholen.

Eine genau Anleitung findest auf der Webseite des Plugin-Anbieters*.

 

* Affiliate-Links

Dieser Beitrag hat 9 Kommentare

  1. User Avatar

    Hallo, vielen Dank für den Beitrag. Ich verwende verwende YOAST und bin genau nach Deiner Anleitung vorgegangen. Code mit Datum versehehn, in die functions.php implementiert und dann die htaccess mit dem Codeschnipsel ergänzt. Leider wird im fb-Debugger auch nach mehrmaligen Scrapen immer noch die https: Url angezeigt. Was mache ich nur falsch? Kann mir jemend einen Tipp geben? Danke und beste Grüße Andreas

    1. Webtimiser

      Hallo Andreas,
      so aus der Ferne kann ich leider nicht sagen, wo genau der Fehler liegt. Aber inzwischen gibt es dafür auch ein Plugin – vielleicht hilft Dir das weiter: Change OG URL To HTTP. Ich habe es nicht getestet, denn ich nutze schon seit längerem Social Warfare dafür.
      Viele Grüße
      Sonia

  2. User Avatar

    Hallo!

    Ich soll Shariff Wrapper löschen und das kostenpflichtige Plugin installieren?
    Die Button passen hier vielleicht hin aber für meinen Blog sind die nichts.
    Habe nach dem Preis gesucht und nicht gefunden.
    Ehrlich gesagt, fühle ich mich betrogen, dass Shariff Wrapper die Shares nicht mehr anzeigt aber für Geld macht es ein anderes Plugin.
    Am liebsten würde ich Herrn Lambeck & Co wegen Sachbeschädigung anzeigen.
    Auf der Support Seite von Shariff Wrapper wird das Thema mit einem Link eines Blogbeitrag abgespeist.
    Im WP-Support Forum hausen Trolle mit über 10 000 Beitrage, die keine Ahnung haben, beleidigen und die Threads zerstören.

    1. Webtimiser

      Hallo Lala,
      ich kann gut verstehen, dass Du Dich über verlorene Shares nach der SSL-Umstellung ärgerst. War bei mir und vielen anderen auch so.
      Aber das Plugin kann nichts dafür. Shariff Wrapper ist ein gutes Plugin, das vom Entwickler kostenlos zur Verfügung gestellt wird.
      Die einfachste Lösung wäre, wenn Facebook hier etwas ändern würde. Aber vermutlich wird das nicht passieren. Daher kann man nur versuchen den Code anzupassen oder ein Plugin
      mit entsprechenden Features zu nutzen. Leider kenne ich kein kostenloses Plugin, das genau diese Funktion bietet.
      VG Sonia

  3. User Avatar

    Genau das habe ich auch gedacht.
    Der Hook für Yoast Seo funktioniert schon mal nicht.

    1. Webtimiser

      Sorry, dass es bei Dir nicht funktioniert! Da die meisten Lösungsversuche umständlich und nicht 100% zuverlässig sind, ist die Plugin-Lösung vermutlich eher zu empfehlen.
      VG Sonia

  4. User Avatar

    Ich hab das mit dem Code gemacht. Hat auch gut funktioniert und die Likes waren wieder da. Leider aber aus irgendeinem Grund funktioniert das seit ein Paar tagen nicht mehr. Haben die bei FB vielleicht etwas geändert oder hat sich da ein Fehler eingeschlichen?

    1. Webtimiser

      Hallo Haro,
      könnte natürlich sein, dass Facebook etwas geändert hat. Vielleicht liegt es aber auch an einem neuen Plugin oder einem Plugin-Update.
      VG Sonia

  5. User Avatar

    Wow, haben ja schon viele ausprobiert!

Schreibe einen Kommentar

Menü schließen