Forcing Visitors to Liking Facebook Page - facebook

I have a Facebook page.
We will start a giveaway. And we will give gifts to our Facebook Fans . They will give a promo code if like our page. BUt we want to sure, they are really fan of our fan page.
Because of this, I want to create a new tab which say "You have to like this page for get promotion code" to user . When visitor like our page, he / she can see content tab. If not, they can't see.
It was easy on static FBML, but know how can i do it with iFrame ? My tab is ready. Created a new app and then this app added to page.

you need to parse the signed_request parameter, it has a Boolean attribute called liked.
you may want to look at this question

Related

Facebook Like Button: Unify a Url & a Facebook Page

In Facebook docs it says:
Can I link the Like button to my Facebook page?
Yes. Simply specify the URL of your Facebook page in
the href parameter of the button.
My problem is that I don't want the Facebook page to be the target of the 'like'.
So currently, the like button on my site attributes the likes to the root domain 'http://example.com/', which is what I want.
This has got many more likes than the facebook page 'http://facebook.com/examplecompage'
Is there a way to make the likes on my facebook page contribute towards the root domain likes?
That is not possible, since they are treated as 2 different objects.
And just to clarify, the documentation on the Facebook developer site is referring to the Like button that you create to be displayed on your site, not the Like button you get on Facebook automatically when you create a page.

Like button for Facebook page shows generic Facebook description in News Feed

I want a Like button on my web site that Likes my Facebook profile (rather than my web page), so that when a user clicks it they subscribe to my Facebook posts.
I've created the Like button using the tool at https://developers.facebook.com/docs/reference/plugins/like/
Further down that page there is an FAQ entry:
Can I link the Like button to my Facebook page?
Yes. Simply specify the URL of your Facebook page in the href
parameter of the button.
So, I've edited the href parameter to point to my Facebook page. eg:
https://www.facebook.com/myfacebookid
When a user clicks the Like button it has the desired effect. The user ends up having Liked my Facebook page. This is easily verified by the user going to my Facebook profile and checking that the Like button has changed to Liked.
But. When the user clicks the Like button, and entry appears in their News Feed with a generic Facebook description. ie:
Facebook is a social utility that connects people with friends and
others who work, study and live around them. People use Facebook to
keep up with friends, upload an unlimited number of photos, post links
and videos, and learn more about the people they meet.
I don't want a generic post about Facebook to appear. I want the description to relate to my Facebook account and/or web site.
Normally, I could modify this behavior with the Opengraph og: description tag, but as the page in the href is a Facebook page and not my own, I can't control the Opengraph tags.
I'm pretty sure that this was working okay before I enabled timeline for my account, so maybe this is a timeline bug?
So, how do I add a Like button which a) Likes my Facebook profile rather than one of my own web pages, and b) Posts a description of my Facebook profile rather than give a generic Facbook description?
Are all your fields in the info part of your page filled in, and/or completed? I just tested your theory and it seemed to work as expected, only thing is I know all fields in "info" are filled it. Give that a try.
This may happen if you have filled invalid/incomplete/wrong og tags in past and later changed them. Facebook's cache creates problem sometime.
Try putting all the entries (i.e. all og tags) and then debug them here http://developers.facebook.com/tools/debug. This debugger gives a detailed info about the url with og tags and also clears the cache for you.
This should solve the problem.
You have 3 important fields that used on page opengraph: Name,Description,Profile Image.
They are used when some one post your link on Facebook, or Google or some else web service that handle opengraph.
Actually, the suggested answers currently do not work and there is an open bug / ticket on Facebook for it. Up to now, there's no fix.
The problem is that you can not use simply https://www.facebook.com/myfacebookid. You should copy and paste the exact page URL. If you have a low number of likes it would look something like https://www.facebook.com/pages/[YourPageName]/[Your page Id]/, and this is the URL that you should use at this point.
If it does not work, try also https://www.facebook.com/[YourPageName]/[Your page Id]/.
In short, copy-paste the URL, do not type it manually.

Facebook page get user like status

I tried googling & checking stackoverflow for the possible solution but haven't found any yet, so would like to bring it up here again.
I have a Facebook page, page has multiple tabs, and one of the tab has a Facebook App (accessed only through the tab, redirect the http://apps.facebook.com/myapp to the page tab)
I have some content (say non-fan content) to be displayed to the user before he likes the page.but, I don't have any way to check if the user has liked the page unless he adds the app & fb documentation has stuff that can give me the required like FQL page_fan, url_like, api(/me/likes/FACEBOOK_PAGE_ID) but each one of this needs an accesstoken (which I cannot get before the user adds the app).
some of the posts on stackover flow says that is not possible without getting the user to add the app. but there are apps like static html, static iframe & others which provides this functionality, how ?
Please advise.
Facebook will POST a signed_request to your server when the user opens the page tab.
This is what you get when you parse the signed_request:
{
"algorithm":"HMAC-SHA256",
"issued_at":1309468031,
"page":{
"id":"xxxxxxxxxxxxxxx",
"liked":true,"admin":true
},
"user":{"country":"fr","locale":"en_US","age":{"min":21}
}
The important part is "page.liked" where you see if the user likes the page.
No permissions and no app authorization is needed for this to work.
Search the web about parsing the signed_request in your favorite web programming language i.e. php.

Link web page, Facebook Like button, and Facebook fan page?

Is this possible?
When someone clicks a Facebook Like button, he/she shares the web page URL with friends on Facebook.
With the same click, the user also becomes a fan of the web site's Facebook fan page.
Thanks!
While adding a Like button on your website to like you "Facebook Page" is possible (and I guess you know that), you can't use the same button to like multiple entities (your current page and the Facebook Page).
What you can do is:
Have two Like buttons, one for the current page and one for the Facebook Page
Place the Like button of your Facebook Page in a "visible" location (e.g. on top of the sidebar)
Capture the like event of your current page (with edge.create)
Encourage the user to "Become a Fan on Facebook too" whenever they like your current page.
See this link on Facebook's developer site.
This will do all the points 1 and 3 you mentioned above. As far as point 2 goes, you will need to reference that on your facebook page.

How to create this kind of facebook page?

I want to create fb page,and to force users to like page,and to share if they want to see content of my fb fan page.
So,like that page,share that page,and you can than show content of that page.
You need to "capture" if the landing user on your Page Tab likes the page or not and if not show them different content and encourage them to Like the page to get more!
I've written an in-depth tutorial on how to check if a user is fan of your Facebook page and included a real world examples from a famous Facebook pages!
And just to add to my own article above, another GREAT example is one the "most" popular pages on Facebook Coca-Cola!
Just a side note, you don't force the users....you encourage them!
The closest you could get is to use a Canvas page with a Like Box or something embedded in it. You can listen for the "Like" by waiting for an FB.event.subscribe(edge.create) event in embedded Javascript.
I would caution you to abide by the terms for forcing people to like a page.
"Like" Reward Guidelines
Facebook API Policy