Facebook share - bilder visas inte
När du vill använda Facebook för att posta en länk till en websida så går Facebook igenom den sidan och letar eftermeta-taggen "description" för att veta vilken text som ska komma med i länken. Om ingen sådan tag hittas så används en viss längd på första textstycket på sidan.
Titeln hittar de helt enkelt genom title-taggen i sidans HTML-kod.
För att välja bild så går Facebook igenom och letar upp alla bilder som finns länkade på sidan, viaimg-taggar. Här verkar detaljerna i implementationerna ha ändrats under tidens gång, men som det ser ut i skrivande stund så är reglerna som följer nedan i artikeln.
1) Facebook kommer att ignorera hittade bilder som är mindre än 50 pixlar, antingen i bredd eller höjd. Bilden måste alltså vara större än 50x50 pixlar.
2) Om en eller flera link-tag med med attributet rel="image" och en href till en bild finns på sidan så kommer Facebook att använda den eller de länkade bilderna istället och ignorera bilder som finns på sidan medimg-tag.
- Sökvägen i href-länken måste vara absolut, alltså se ut såhär "http://www.website.com/image.jpg".
<link attribute rel="image" href="http://www.website.com/image.jpg" />
- Facebook kommer att visa den sist länkade bilden (via link-tag) som första bild att välja på i share-dialogen.
3) Använd Facebooks eget verktyg URL Linter för att se vad Facebook egentligen hittar på given länk.
- Notera att detta verktyg kan ge fel uppfattning om länkade bilder vialink-tag. Den visar att den ser bilder som är mindre än 50x50 pixlar, men kommer på Facebook.com att ignorera detta.
False positives
Det finns ytterligare ett steg som utvecklare kan tro löser problemet ovan, men som inte hjälper alls och det är att använda meta-taggar som har att göra med Facebooks Open Graph protokoll.
Där finns beskrivet meta-taggar med prefixet "og" och namnen "title", "image" och några fler. Problemet är att dessa ignoreras till man lägger till ett värde för en meta-tag för "fb:admins", vilket deras URL Linter-verktyg bekräftar. Man måste alltså vara registrerad med Facebook för att detta ska fungera och det har inget med vanliga delning på Facebook att göra.
Sebastian Nilsson
2011-06-15