Using hash tags with Facebook share possible?

11,082

Solution 1

Use URL Encoding for the # character. Just replace the following:

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

with:

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

This will allow you to pass the # to share on Facebook, Twitter, etc without getting stripped.

Solution 2

Take a look at Google's answer to the AJAX content problem, the hashbang.

Basically, on your AJAX page, set the hash to !/path/to/whatever/ – in other words,

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

Keep in mind your server must actually serve content similar to what you'd see in the AJAX application at http://www.example.com/path/to/whatever/.

I'm not sure if Facebook respects the hashbang, but it does at least solve Googlebot problems for you. Edit: It looks like Facebook doesn't support the hashbang. You'll probably have to set up a redirector page.

Share:
11,082
Staffan Estberg
Author by

Staffan Estberg

Creative developer and filmmaker based in Bangkok.

Updated on June 30, 2022

Comments

  • Staffan Estberg
    Staffan Estberg almost 2 years

    I'm developing an ajax based web site and I want to include a FB share function on the loaded content. The links use a hash tag and I can't manage to get the full links to show up when using the share function, I only get the domain url. Are hash tags not allowed or is there a special method for sharing such links?

  • Staffan Estberg
    Staffan Estberg about 12 years
    Thanks. Yes I saw that thread now, looks like FB doesn't support any type of hash method :(
  • FFish
    FFish almost 9 years
    It does for me! I first replaced the # with %23 and than PHP's urlencode() on top.
  • Pietro Coelho
    Pietro Coelho over 8 years
    Tried to use javascript encodeURIComponent but didn't work.