Facebook Like (в модальном окне) изменить location_href - PullRequest
0 голосов
/ 08 января 2012

Мы используем PrettyPhoto и новейшее воплощение 3.1.3 позволяет пользователям ставить лайки и твиты в модальном окне.

Это здорово, но работает (fb).Мне еще предстоит найти кого-нибудь, у кого это работает, даже сам сайт PrettyPhoto.

В любом случае, я действительно хотел бы использовать это.Я думаю, что проблема заключается в том, как анализируется URL.

Код Prettyphoto js для кнопки iframe like ...

<iframe src="http://www.facebook.com/plugins/like.php?locale=en_US&href={location_href}&amp;layout=button_count&amp;show_faces=true&amp;width=500&amp;action=like&amp;font&amp;colorscheme=light&amp;height=23" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:500px; height:23px;" allowTransparency="true"></iframe>

Ключ, похоже, {location_href}

Это правильное форматирование?Перед тем как спросить, yep спросил о поддержке PrettyPhoto, но, увы, есть целая куча людей, которые задают одни и те же вопросы без ответа.

Я думаю, что js, которые они используют, неправильный.

Длядобавить: попробовал parent_location_href, но не анализирует правильно, также parent.location_href и все различные коннотации ..

Похоже, мне нужно поставить абсолютную ссылку ... или я должен указать URL сайта, а затем location_href

Как http://mydomain.com/{location_href}

1 Ответ

1 голос
/ 08 января 2012

Нет версии iframe для кнопки «Мне нравится», поддерживаемой Facebook. Пожалуйста, смотрите здесь http://developers.facebook.com/docs/reference/plugins/like/

Я бы использовал версию xfbml и следовал за документацией Tue, чтобы сделать это, добавив пространство имен и асинхронно загрузив SDK fb js.

Редактировать: вот краткое руководство

Поместите этот код сразу после открывающего тега body

 <div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_GB/all.js#xfbml=1&appId=265199713527696";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

Измените ваш HTML-тег, чтобы иметь это пространство имен

<html xmlns:fb="http://ogp.me/ns/fb#">

Затем поместите кнопку, похожую на xfbml, в модальное замещение значений, если это необходимо.

<fb:like href="http://yoururl.com" send="true" width="450" show_faces="true" font="arial"></fb:like>

Возможно, вы захотите использовать fb lint, чтобы проверить, какие данные обнаружены на Facebook, и обновить любые данные для ссылки. Это можно найти на http://developers.facebook.com/tools/debug

...