Artikelbilder vs. Facebook


Wer kennt es nicht? Man hat eine schöne, tolle, informative Seite gefunden oder sogar selbst kreiert – und teilt sie bei Facebook…

Was kann man beim Teilen machen – außer einen eigenen Einleitungstext zu schreiben? Maximal eine von mehreren Miniaturansichen auswählen, ggf. auch das Bild ganz entfernen – oder neuerdings auch ein neues hochladen – je nachdem, wer wo welche Seite teilt. Mit einem beherzten Klick in den “gegrabbten” Beschreibungstext kann man – ob nun eigene Seite oder nicht – den Text verändern… Aber darum geht es hier nicht – hier geht es heute um die Anzeige des gewünschten Thumbnails.

Gut – wenn es eine fremde Seite ist, kann man nicht viel machen. Ist es aber eine eigene Seite, kommt man schnell auf die Idee, das eine oder andere Bild als Artikelbild zu hinterlegen (so wie z.B. bei einem WordPress-Blog), damit genau DIESES bei Facebook erscheint… Denn die Realität sieht so aus: 99 mal ist das Bild, welches man möchte, auswählbar – doch einmal passiert es: Es ist einfach nicht dabei! Es ist nicht auswählbar! Und dann entsteht besagter Wunsch, es so festzulegen – schon falls ein Dritter unsere Seite teilen will. Denn der lädt ganz bestimmt nicht unser richtiges Bild hoch, zumal er es ja gar nicht hat, wenn er es nicht gerade vorher auf unserer Seite “geklaut” hat…

Die Frage ist natürlich, wie man das nun realisiert. Wer schon einmal im Seitenheader mit

<link rel=”image_src”            href=”{$_PicUrl}” />
<meta name=”medium”        content=”image” />

“rumgespielt” hat, wird gemerkt haben, daß das bei Facebook, wenn überhaupt, nur bedingt etwas bringt. Die Lösung lautet:

<meta property=”og:image”          content=”{$_PicUrl}” />

Zusammen mit den anderen relevanten Tags, mit denen man definieren kann, wie Ziel-Url, Beschreibung usw. lauten sollen, ergibt sich folgender Block für die OpenGraph-Verarbeitung durch Facebook:

<meta property=”og:type”              content=”{$_Type}” />
<meta property=”og:title”               content=”{$_Title}” />
<meta property=”og:url”                  content=”{$_Url}” />
<meta property=”og:site_name”    content=”{$_Name}” />
<meta property=”og:description”   content=”{$_Desc}” />
<meta property=”og:image”           content=”{$_PicUrl}” />

Dabei ist darauf zu achten (so zumindest meine Erfahrung), daß ein kompletter Url (“http://….”) angegeben wird, nicht nur ein Bildpfad. Außerdem muß das Bild mindestens 200px breit sein und ebenfalls mindestens 200px hoch.

So – nun haben wir alles schön so geändert, wie es hier steht. Natürlich, nachdem o.g. Problem auftrat. Und auf der Suche nach Abhilfe förderte “Freund Google” diese Seite hier zu Tage. Aber wie zum Geier überreden wir jetzt Facebook, auch die geänderten Daten anzuzeigen? Denn egal, wie oft wir auch die Seite mit [STRG] + [F5] neuladen, den Seitenlink erneut zum Teilen eingeben, beten oder Beschwörungstänze aufführen – der Facebook-Cache will von alldem nichts wissen. Er bleibt bei den ermittelten Inhalten aus unserem ersten Teilungsversuch.

Da kommt nun der Facebook-Debugger ins Spiel:

Nach dem Aufruf der Tool-Seite ist der Url der zu teilenden und mittlerweile geänderten bzw. aktualisierten Seite ins Feld einzugeben. Danach muß man nur noch auf “Fehlerbehebung” klicken, und das Tool zeigt an, welche Daten nun ermittelt / erkannt wurden. Die alten, gecachten Informationen werden in Facebooks “Gedächtnis” überschrieben bzw. geupdatet. Danach kann der Link ganz normal auf Facebook geteilt werden, und es werden die aktuellen Daten und somit auch das richtige Bild gezeigt.

PS: Bei WordPress kann man sicherlich die Infos noch ein wenig tunen – aber das Artikelbild wird von Facebook in der Regel zuverlässig erkannt, wenn die Abmessungen jeweils mindestens 200 Pixel betragen…

PPS: Da diese OG-Metatags alles andere als valide sind, macht es natürlich Sinn, diese bei der Generierung der Seite auch nur dann auszuliefern, wenn der Facebook-Grabber die Seite aufruft. Eine mögliche Lösung wäre:

<?php
$facebook = false;
if (isset($_SERVER['HTTP_USER_AGENT']) &&           stripos($_SERVER['HTTP_USER_AGENT'], ‘facebookexternalhit’) !== FALSE) { $facebook = true;}
if ($facebook) :?>
TAGS
<?php endif; ?>

Für die adäquate Google-Anweisung müßte man mal einen Blick in die Serverlogs tätigen.

PPPS: Damit statt der aktuellen (Projekt-Unter)Seite nur die Startseite/Indexseite geteilt wird, müßte man die Werte in den Tags entsprechend anpassen bzw. mit einer Standarddefinition versehen. Und wenn man nicht möchte, daß irgendwelche Bilder (auch nicht als Miniatur) geteilt werden, könnte man ja für og:image ein transparentes gif/png hinterlegen – sollte eigenlich klappen…

Interessante Links:
- Google Plus und Facebook das richtige Thumbnail zu euren Artikeln verpassen
- HiDPI: Hochauflösende Bilder in WordPress ohne Plugins ausliefern
- WP Open Graph Meta

1&1: Umstellung auf neue PHP-Version


Ab dem 01.04.2013 unterstützt 1&1 die PHP-Versionen 4 und 5.2 nicht mehr; daher steht seit einigen Wochen auf den Servern PHP 5.4 zur Verfügung.

Um schnellstmöglich von der neuen PHP-Version zu profitieren, sollte schon jetzt im 1&1-Control-Center auf die neue “Globale PHP-Version” umgestellt werden. Überprüfen Sie anschließend, ob Ihre Webseite und Skripte einwandfrei laufen. Warten Sie mit der Umstellung also nicht zu lange – denn nur so gewährleisten Sie eine einwandfreie Darstellung Ihrer Website und ein reibungsloses Funktionieren Ihrer Skripte.

Bitte beachten Sie, daß in der neuen Version die Option “Register Globals” nicht mehr unterstützt wird. “Antike Skripte”, die noch damit arbeiten, müssen umprogrammiert bzw. ersetzt werden, da sie ansonsten nicht mehr funktionieren!

Außerdem empfehlen wir Ihnen, auf jeden Fall folgende Anwendungen durch ein Update auf den aktuellen Stand zu bringen:

  • Contao
  • Drupal
  • eGroupWare
  • Joomla
  • MediaWiki
  • myorgbook
  • osCommerce
  • phpBB
  • Serendipity
  • Shopware
  • Typo3
  • WebCalendar
  • WordPress
  • XOOPS
  • xt:Commerce

Schwarze Schafe: Black Hat Webmasters


Ich bin wieder einmal erstaunt, um nicht zu sagen entsetzt, was man so alles findet. Black Hat SEO sollte allen ein Begriff sein. Aber es gibt noch mehr Schwarzhüte – zwar vielleicht nicht unbedingt im technischen, wohl eher im ökonomischen aber auf jeden Fall im moralischen Sinne.

WordPress ist ja eine feine Sache. Und auch wenn es von der Lizenz gedeckt ist, das Entfernen des “powered by wordpress”-Schriftzuges am Seitenende ist irgendwie unfair und wird überlicherweise auch nicht gemacht.

Soweit die Einleitung – mal bitte im Hinterkopf behalten!

Interessant wird es, wenn man im Netz mal so die regionale Konkurrenz ableuchtet. Dann findet man von der Agentur, die alle möglichen Bereiche (Grafik, Audio, Video, Models) abdecken will, 2 Facebook-Seiten. Null Inhalt und nicht einmal ein Impressum. Ok, da lächelt man müde. Ein (bzw. zwei – links u. rechts…) Blick(e) auf die Schultern: Teufel links, Engel rechts –  und der Teufel flüstert: Abmahnung! Schon wird aus dem Lächeln ein Grinsen…

Aber dann kommt der Engel ins Spiel: Selbst weiß man auch nur durch Zufall von der Impressumspflicht bei Facebook… Vor nicht allzu langer Zeit stand man selbst vor einer leeren FB-Seite… Abmahnungen sind die Pest – selbst will man keine haben. Der Konkurrent will auch nur leben und seine Familie ernähren. Und vor allem: Selbst weiß man auch nicht alles. Also Thema erledigt – ‘Fair Play’ und Ruhe… Leben und leben lassen.

Trotzdem ärgert man sich aber, wenn gerade diese Konkurrenz sämtliche guten Aufträge in der Region abgreift. Allerdings kann man das auch so sehen: Die Kunden kennen eben noch nichts besseres. Also heißt es: “Ranklotzen!”

Die o.g. Agentur macht grafisch bzw. optisch gute Arbeit. Die Seiten sind zwar umständlich programmiert – aber das Erscheinungsbild ist wirklich gut. Der Code ist individuell (also kein WP, Typo usw.) – dafür aber auch nicht valide. Und von der SEO ist auch nicht gerade viel zu sehen… Alles in allem kann man das aber anbieten – wer eine Website braucht, kriegt eine und kann sich damit sehen lassen. Mehr aber auch nicht!

Aber es gibt noch mehr “Konkurrenz”. Die Optik geht zwar noch gerade so (allerdings nur mit ganz viel gutem Willen – und jetzt mal bitte an die Einleitung denken…) und im Footer prangt anstelle der WP-Passage ein wichtig klingendes “designed by XYZ”. Oooooookay – ist nicht verboten…

Wobei das “designed” aber total übertrieben wirkt, wenn man unkomprimierte Hintergrundbilder (> 1MB !!!), 3 RSS-Feed-Buttons (von denen 2 ins Leere zeigen) und ein Kontaktformular findet, bei dem das Textarea gerade mal  9 Zeichen breit und 10 Zeilen hoch ist. Daß 3 nicht vorhandene Buttons auf Facebook, Twitter und RSS-Feed (doppelt hält besser, vierfach erst recht) linken und der einzig irgendwo richtig verlinkte Feed LEER ist, scheint da nur nebensächlich. Aber das beste: Der Websitebetreiber (also der Kunde dieses “Webmasters”) hat ein tolles Impressum nach § 6 TDG. Wie bitte? Benutzt man dafür nicht seit 2007 § 5 TMG? Und vor allem: Es ist keine Rechtsform und kein Geschäftsführer ersichtlich - und ich bin mir zu 90% sicher, daß es sich nicht um ein Einzelunternehmen handelt, bei dem das entfallen würde..   

Qualität ist irgendwie anders. Doch ich bin mir sicher, daß dieser “Webmaster” ein “Schweinegeld” für diese “Leistung” kassiert hat. Die ehemals vordere Plazierung auf der SERP ist weg, dank nicht vorhandener SEO. Und sämtlicher Content wird von einem anderen Server nachgeladen.

Diese Seite ist so abartig organisiert, daß man dem “Webmaster” Berufsverbot erteilen sollte!

Aber gerade wir können ja auch nörgeln – EiTiCo ist noch offline, und Fätt-Boys Online steht immer noch so im Netz, wie ich es vor Urzeiten kreiert habe. Das ist daher auch nicht gerade repräsentativ. Aber die liebe Zeit… Kundenaufträge sind eben wichtiger. Doch wir können mittlerweile wenigstens DAS HIER (mal nach “trisepo” suchen – ca. Platz 10) vorweisen, was bedeutet, daß wir lernfähig sind. Bei einigen anderen bin ich mir da nicht so sicher…

Übrigens: Wer mal wissen will, was GUTE Arbeit kostet:
http://www.webkalkulator.com/kostenrechner.asp

Umstellung des 1und1-Blogs auf WordPress


Heute wurde diese ‘Migration’ – also die Umstellung eines 1&1-Blogs auf ein selbst installiertes – vollzogen. Die alten Einträge wurden übernommen. Falls jemand auch mal derartiges vorhat und dabei dann das Problem haben sollte, daß die Exportdatei vom 1und1-Blog beim Import durch WordPress (Werkzeuge / Daten importieren / WordPress) einen Fehler erzeugt, hilft folgendes:

Die XML-Datei mit einem einfachen Editor öffnen und nach der Sprachangabe die Zeile <wp:wxr_version>1.1</wp:wxr_version> einfügen, so daß die Datei wie folgt aussieht:

<?xml version="1.0" encoding="UTF-8"?>
<!--
 This is a WordPress eXtended RSS......
-->
<!-- generator="......
<rss version="......
<channel>
 <title>......
 <link>...... 
<description>...... 
<pubDate>...... 
<generator>...... 
<language>en</language>
<wp:wxr_version>1.1</wp:wxr_version>
<wp:category><wp:category_nicename>
usw...

Danach klappte bei uns der Import; wir mußten lediglich die Artikel nochmals den Kategorien zuweisen.