Кнопка «Мне нравится» на Facebook в приложении FB Pages на основе iFrame - Проблема - PullRequest
3 голосов
/ 05 сентября 2011

У меня проблемы с добавлением кнопки «Мне нравится» на страницу на основе iFrame на вкладках моих фан-страниц FB. Я использую JavaScript SDK и Open Graph, чтобы указать страницу, которая должна понравиться пользователю (это текущая страница в моих страницах FB).

Страница основана на iFrame, является приложением в FB и доступна через вкладки FB Page на моей странице FB. Проблема в том, что Facebook назначает «Мне нравится» самой странице FB (на моей домашней странице FB, если хотите), а не рассматриваемой странице (моей тестовой странице - она ​​настроена как приложение и отображается на вкладках моих страниц FB под именем «Og test»).

Я попытался запустить целевую страницу для iFrame через финтовку FB, и она выдавала странную ошибку, сообщающую, что я предоставил Open Graph Type «Other» (нет, я предоставил «website») в моем теге META) см. ниже:

http://developers.facebook.com/tools/debug/og/object?q=http%3A%2F%2Fwww.airport-parking-quote.co.uk%2Ffacebook%2Fog-test.php

Кроме того, при просмотре страницы отладки кажется, что Facebook либо игнорирует QueryString в моем значении «og: url» и, следовательно, видит только URL-адрес тщеславия моей страницы FB, либо существует какой-то блок при возможности подписаться Страницы приложения на основе iFrame.

Может кто-нибудь пролить свет на это? Я думал, что из этой статьи будет возможно достичь того, что я пытаюсь сделать:

http://www.insidefacebook.com/2010/09/09/like-buttons-app-content/

Код для целевой страницы iFrame:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#" xmlns:fb="http://www.facebook.com/2008/fbml">
  <head>
    <title>Test Like</title>
    <meta property="og:title" content="OG Test"/>
    <meta property="og:type" content="website"/>
    <meta property="og:url" content="https://www.facebook.com/EssentialTravel?sk=app_275969292428556"/>
    <meta property="og:image" content=""/>
    <meta property="og:site_name" content=""/>
    <meta property="fb:admins" content="100002424161307"/>
    <meta property="fb:app_id" content="275969292428556"/>
    <meta property="og:description" content="OG test through canvas page"/>
  </head>
  <body>
  <div id="fb-root"></div>
  <script src="http://connect.facebook.net/en_US/all.js"></script>
  <script>
    FB.init({
      appId  : '275969292428556',
      status : true, // check login status
      cookie : true, // enable cookies to allow the server to access the session
      xfbml  : true, // parse XFBML
      oauth  : true // enable OAuth 2.0
    });
  </script>
    Test Page<br>
    <script src="http://connect.facebook.net/en_US/all.js#appId=156081301143077&amp;xfbml=1"></script><fb:like href="https://www.facebook.com/EssentialTravel?sk=app_275969292428556" send="false" width="450" show_faces="false" action="recommend" font=""></fb:like>
  </body>
</html>

У кого-нибудь есть идеи?

Спасибо

Pjordanna

1 Ответ

2 голосов
/ 05 сентября 2011

К сожалению, вы не можете настроить кнопку «Мне нравится» для фактической вкладки на странице.

Как вы узнали, пытаетесь создать кнопку «Мне нравится», используя URL, такой как https://www.facebook.com/EssentialTravel?sk=app_275969292428556просто создаст кнопку «Мне нравится» для страницы, а не для отдельной вкладки.

Лучший способ создать кнопку «Мне нравится» для этой конкретной вкладки - просто использовать URL-адрес приложения, расположенного на вашем сервере, например.http://YOURDOMAIN.com/YourAppDirectory

...