2012-03-07 8 views
6

Zajmuję się tworzeniem strony internetowej opartej na ajax i chcę włączyć funkcję udostępniania FB do załadowanej treści. Łącza używają znacznika skrótu i ​​nie mogę uzyskać pełnych linków do wyświetlenia podczas korzystania z funkcji udostępniania. Otrzymuję tylko adres URL domeny. Czy tagi hash są niedozwolone, czy istnieje specjalna metoda udostępniania takich linków?Korzystanie z tagów hashowania z udziałem Facebooka możliwe?

+5

Tekst po "#" w URI to ** identyfikator fragmentu **, a nie znacznik skrótu. Hashtag to system ułatwiający wyszukiwanie powiązanych treści na Twitterze. – Quentin

+0

Ah Widzę, dzięki. –

Odpowiedz

20

Użyj kodowania adresu URL dla znaku #. Wystarczy wymienić następujące elementy:

http://www.example.com/#/path/to/whatever/ 

z:

http://www.example.com/%23/path/to/whatever/ 

To pozwoli Ci zdać # podzielić na Facebook, Twitter, itp bez uzyskiwania usuwane.

+2

Ryan @ Cool, dzięki! –

+6

To już nie działa –

+2

To robi dla mnie! Najpierw zastąpiłem '#' z '% 23' i PHP '' urlencode() 'na górze. – FFish

1

Zobacz odpowiedź Google na problem z treścią AJAX, the hashbang.

Zasadniczo na swojej stronie AJAX ustawić skrót do !/path/to/whatever/ – innymi słowy,

http://www.example.com/#!/path/to/whatever/ 

Pamiętaj, serwer musi rzeczywiście służyć zawartość podobna do tego, co chcesz zobaczyć w aplikacji AJAX w http://www.example.com/path/to/whatever/ .

Nie jestem pewien, czy Facebook szanuje hashbang, ale przynajmniej rozwiązuje problemy Googlebota. Edytuj: Wygląda jak Facebook doesn't support the hashbang. Prawdopodobnie będziesz musiał skonfigurować stronę przekierowującą.

+0

Dzięki. Tak, teraz widziałem ten wątek, wygląda na to, że FB nie obsługuje żadnego typu metody hash :( –

Powiązane problemy