06 August 2012

og:image und papoo war noch offen

printf("hello, world\n");
printf("hello, world\n"); (Photo credit: isipeoria)
Im Rahmen des Einbaus der Facebook-Kommentarfunktion in das Contentmanagementsystem Papoo habe ich ja schon auf das Problem mit dem Teaserbild hingewiesen.

Nun hatte ich endlich mal Lust und Gelegenheit mich um dieses, laut Support, aufwendige Problem zu kümmern. Die Gelegenheit ergab sich, weil das canonical nicht richtig ausgeliefert wurde und ich dadurch noch tiefer in den Quellcode eintauchen durfte. Aber das ist nochmal eine andere Geschichte.

Ich habe nun folgende Ergänzungen vorgenommen:

Im Style-Template, dort genauer in der _kopf.utf8.html wurde die Zeile
<meta property="og:image" content="http://www.familienfreund.de/images/{$TBfacebook}" />
eingefügt. Die Vorschaubilder konnte ich nicht verwenden, da Facebook Mindestmaße von 200px pro Kantenlänge vorgibt und einzelne Bilder schmaler sind.

Die größere und wichtigere Änderung habe ich in der articel_class.php vorgenommen, denn es muss der Bildname in einer 'speziellen' Variable bereitgestellt werden. Sinnigerweise habe ich die TBfacebook genannt.

$teaserbildfacebook = sprintf("SELECT teaser_bild FROM %s WHERE reporeID='%s' LIMIT 1",
$this->cms->tbname['papoo_repore'],
$reporeid
  );
if ($this->db->get_var($teaserbildfacebook) == "") $this->content->template['TBfacebook'] = '10_ff_logo.jpg';
else
$this->content->template['TBfacebook'] = $this->db->get_var($teaserbildfacebook);
Ich hole also das Feld teaser_bild mit der entsprechenden Artikel-ID aus der Tabelle und übergebe sie an die Variable. Historisch gewachsen, so sagt man das wohl, gibt es auch Beiträge ohne Teaserbild und hier musste ich tricksen und übergebe in diesem Fall einfach das Logo der familienfreund KG.

Eventuell hilft dieser Post ja dem einen oder anderen weiter und möchte hierfür auch einen Like oder ein + geben.

Enhanced by Zemanta

Keine Kommentare:

Beliebte Posts