Korzystając z Facebook Sharer, Facebook zaoferuje użytkownikowi opcję użycia jednego z kilku zdjęć pobranych ze źródła jako podglądu ich łącza. Jak wybierane są te obrazy i jak mogę się upewnić, że jakiś konkretny obraz na mojej stronie zawsze znajduje się na tej liście?
393
Odpowiedzi:
Jak powiedzieć Facebookowi, którego obrazu użyć, gdy moja strona zostanie udostępniona?
Facebook ma zestaw metatagów z otwartym wykresem, na który patrzy, aby zdecydować, który obraz ma zostać wyświetlony.
Kluczami do obrazu na Facebooku są:
i powinien znajdować się wewnątrz
<head></head>
tagu u góry strony.Jeśli te tagi nie są obecne, wyszuka starszą metodę określania obrazu:
<link rel="image_src" href="https://stackoverflow.com/myimage.jpg"/>
. Jeśli żadna z nich nie jest obecna, Facebook spojrzy na zawartość strony i wybierze obrazy ze strony, które spełniają kryteria udostępniania obrazu: Obraz musi mieć rozmiar co najmniej 200 na 200 pikseli, maksymalny współczynnik kształtu 3: 1, aw PNG, Format JPEG lub GIF.Czy mogę określić wiele obrazów, aby umożliwić użytkownikowi wybranie obrazu?
Tak, wystarczy dodać wiele metatagów obrazu w kolejności, w jakiej mają się pojawiać. Użytkownik zostanie wyświetlony w oknie dialogowym wyboru obrazu:
Podałem odpowiednie metatagi obrazu. Dlaczego Facebook nie akceptuje zmian?
Po udostępnieniu
facebookexternalhit/1.1 (+https://www.facebook.com/externalhit_uatext.php)
adresu URL przeszukiwacz Facebooka, który ma klienta użytkownika , uzyska dostęp do Twojej strony i buforuje meta informacje. Aby zmusić serwery Facebooka do wyczyszczenia pamięci podręcznej, użyj narzędzia Debuger / linter url Facebooka , które uruchomiono w czerwcu 2010 r., Aby odświeżyć pamięć podręczną i rozwiązać problemy z metatagami na stronie.Ponadto obrazy na stronie muszą być publicznie dostępne dla robota Facebook. Należy podać bezwzględne adresy URL, takie jak http://example.com/twojimage.jpg zamiast po prostu /twojimage.jpg.
Czy mogę zaktualizować te metatagi za pomocą kodu po stronie klienta, takiego jak JavaScript lub jQuery? Nie. Podobnie jak przeszukiwacze wyszukiwarek, skrobak Facebooka nie wykonuje skryptów, więc wszelkie metatagi obecne podczas pobierania strony to metatagi używane do wyboru obrazu.
Dodanie tych tagów powoduje, że moja strona nie jest już sprawdzana. Jak mogę to naprawić?
Możesz dodać niezbędne przestrzenie nazw Facebooka do swojego tagu, a następnie Twoja strona powinna przejść sprawdzanie poprawności:
źródło
<link rel="apple-touch-icon" href="...">
(tak dostaje obraz SO)Kiedy udostępniasz dla Facebooka, musisz dodać swój html do sekcji head następnych metatagów:
I to wszystko!
Dodaj przycisk zgodnie z zaleceniami FB.
Wszystkie potrzebne informacje znajdują się na stronie www.facebook.com/share/
źródło
Począwszy od 2013 r., Jeśli używasz facebook.com/sharer.php (PHP), możesz po prostu utworzyć dowolny przycisk / link, taki jak:
Połącz parametry zapytania:
To proste: nie potrzebujesz żadnych plików js ani innych ustawień. To tylko zwykły link HTML. Styluj znacznik A w dowolny sposób.
źródło
p[images][0]
było dokładnie tym, czego potrzebowałem.og
tagi działają w celu udostępniania tego samego obrazu, ale muszę udostępnić wiele obrazów z tej samej strony.s=100
w Twoim poście?Umieść następujący tag w
head
:Od http://www.facebook.com/share_partners.php
Jeśli chodzi o to, co wybiera jako domyślne w przypadku braku tego znacznika, nie jestem pewien.
źródło
Z mojego doświadczenia wynika , że http://www.facebook.com/sharer.php nie używa metatagów. Używa przekazanego ciągu. Patrz poniżej.
http://www.facebook.com/sharer.php?s=100&p[title]=THIS IS MY TITLE & p [podsumowanie] = TO JEST MOJE PODSUMOWANIE & p [url] = http: //www.MYURL.com&&p [obrazy] [ 0] = http: //www.MYURL.com/img/IMAGEADDRESS
Metatagi współpracują z programistami Facebooka, takimi jak przyciski wysyłania / wysyłania, podobnie jak inne informacje o otwartym grafie. Więc jeśli użyjesz jednego z rzeczywistych elementów Facebooka, takich jak komentarze i takie, wszystko to będzie powiązane z elementami Open Graph.
AKTUALIZACJA: Istnieją dwa sposoby użycia sharer *. Uwaga: wartość versus? U w ciągu zapytania
1 ==> STRING: http://www.facebook.com/sharer.php?s + treść z góry
~ ~> Wyciągnie informacje z łańcucha.
2 ==> URL: http://www.facebook.com/sharer.php?u=url gdzie url jest równy rzeczywistemu adresowi
~~> Zeskrobuje stronę podaną w wartości adresu
~ ~> Możesz przetestować wartości tutaj: https://developers.facebook.com/tools/debug
źródło
Stary sposób, już nie działa:
Zgłoszony nowy sposób również nie działa:
Losowo to działało i działało podczas pierwszego dnia, w którym go wdrożyłem, od tego czasu w ogóle nie działa.
Strona liniowa Facebooka, narzędzie, które sprawdza twoją stronę, zgłasza, że wszystko jest poprawne i wyświetla wybraną przeze mnie miniaturę ... tylko że sama strona share.php nie działa. To musi być błąd na Facebooku, który najwyraźniej nie chce naprawić, ponieważ każdy raport o błędzie dotyczący tego problemu, który widziałem w ich systemie, mówi, że został rozwiązany lub naprawiony.
źródło
Aby zmienić tytuł, opis i obraz, musimy dodać kilka metatagów pod tagiem head.
KROK 1:
Dodaj metatagi pod tagiem head
KOLEJNY KROK:
Kliknij poniższy link
https://developers.facebook.com/tools/debug
Dodaj swój adres URL w polu tekstowym (np. Http://www.test.com/ ), w którym wspomniano o tagach. Kliknij przycisk DEBUG.
Zrobione.
Możesz to sprawdzić tutaj https://www.facebook.com/sharer/sharer.php?u=http://www.test.com/
W powyższym adresie u = link do Twojej witryny
CIESZYĆ SIĘ !!!!
źródło
Dla bezpiecznego HTTPS
źródło
Miałem ten problem i naprawiłem go za pomocą sugestii manuela-84. Używanie obrazu o wymiarach 400 x 400 pikseli działało świetnie, a mój mniejszy obraz nigdy nie pojawił się w udostępniającym.
Pamiętaj, że Facebook zaleca kwadratowy obraz o wielkości co najmniej 200 pikseli jako tag og: image: https://developers.facebook.com/docs/opengraph/howtos/maximizing-distribution-media-content/#tags
źródło
Właśnie to działało dla mnie: umieściłem żądany obraz miniatury na stronie tuż za tagiem i uczyniłem go zbyt małym, aby zobaczyć ...
Nie testowałem go z wysokością 0 i szerokością 0, ale prawdopodobnie nadal będzie działał .. Nie gwarantuje to, że użytkownik wybierze ten obraz.
RÓWNIEŻ wygląda na to, że Facebook buforuje miniatury na twojej stronie i nie zawsze sprawdza je pod kątem nowych. Spróbuj dodać to do innej strony w swojej witrynie, a zobaczysz, że to działa.
źródło
style="display:none;"
zamiast ustawiać ją na 1x1 pikseli.Użyj okna dialogowego kanału Facebook zamiast okna udostępniania, aby wyświetlić niestandardowe obrazy
Przykład:
źródło
Nie mogłem zmusić Facebooka do wybrania odpowiedniego obrazu z określonego postu, więc zrobiłem to, co opisano na tej stronie:
/webapps/18468/adding-meta-tags-to-indidual-blogger-posts
Innymi słowy, coś takiego:
Zasadniczo będziesz kodować instrukcję if w kodzie HTML swojej witryny, aby zmienić meta treść tego, co zmieniłeś dla tego jednego postu. To niechlujne rozwiązanie, ale działa.
źródło