Все, что мне нужно, это простая кнопка «Мне нравится» в Facebook.

Я не могу заставить кнопку Facebook Like работать на странице ASP.NET. Я пытался использовать инструменты разработчика FB для создания кода для отображения кнопки «Мне нравится», а также пытался использовать AddThis, и ни одна из них не работала. Вот что я пробовал:

1) сгенерированный FB как генератор кнопок, стиль IFRAME

<html>
<body>
    <iframe src="//www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.illuminephotos.co.uk%2Fblog.aspx&amp;send=false&amp;layout=standard&amp;width=450&amp;show_faces=true&amp;action=like&amp;colorscheme=light&amp;font=segoe+ui&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>
</body>
</html>

2) генерируется FB как генератор кнопок, стиль HTML5

<html>
<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";
        fjs.parentNode.insertBefore(js, fjs);
    } (document, 'script', 'facebook-jssdk'));</script>

    <div class="fb-like" data-href="http://www.illuminephotos.co.uk/blog.aspx"
    data-send="false" data-width="450" data-show-faces="true" data-font="segoe ui"></div>
</body>
</html>

3) сгенерировано AddThis (слегка изменено с помощью <%=...%> блоков на заставьте его работать на ASP.NET)

<html>
<body>
    <!-- AddThis Button BEGIN -->
    <div class="addthis_toolbox addthis_default_style ">
    <a class="addthis_button_facebook_like" <%="fb:like:layout"%>="button_count"></a>
    <a class="addthis_button_tweet"></a>
    <a class="addthis_button_google_plusone" <%="g:plusone:size"%>="medium"></a>
    <a class="addthis_counter addthis_pill_style"></a>
    </div>
    <script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#pubid=xa-4f4c14fd1002be4d"></script>
    <!-- AddThis Button END -->
</body>
</html>

В обоих случаях 1) и 2) отлично работают на локальном хосте. Я вижу кнопку «Мне нравится», и она работает, когда я нажимаю на нее. Но на сервере ничего нет, и сетевая консоль Firebug показывает только получение для «blog.aspx», больше ничего.

На локалхосте 3) тоже работает отлично, вижу кнопки FB, Twitter, G+ и AddThis. Но на сервере только Twitter, G+ и AddThis, без FB.

Я погуглил и искал ТАК, но я в тупике. Что делает Facebook, чего не делает Twitter/G+? Любые идеи? Как это может нормально работать на локальном хосте, но не работать на сервере?

(мой тестовый URL-адрес: http://www.illuminephotos.co.uk/blog.aspx)


person demoncodemonkey    schedule 28.02.2012    source источник
comment
Оба виджета отлично отображаются в Chrome по вашему тестовому URL.   -  person Chris    schedule 28.02.2012
comment
И они отлично работают в IE 7-9.   -  person Chris    schedule 28.02.2012
comment
Правда, должно быть проблема с Firefox. Шлепаю себя за то, что не проверял другие браузеры... Но все же вопрос остается.   -  person demoncodemonkey    schedule 28.02.2012
comment
Если это проблема только Firefox, вы уверены, что у вас нет никаких плагинов, которые могут возиться со сценарием? Грязная обезьяна? Носкрипт? Что-нибудь в этом роде?   -  person Chris    schedule 28.02.2012
comment
Работает на меня. Chrome и Firefox — Windows 7.   -  person Plastic Sturgeon    schedule 28.02.2012
comment
Проблема была в Adblock Plus. Отключил это, и в Firefox тоже все заработало. Кажется, у меня остался лишний анти-фейсбуковый фильтр, оставшийся с давних времен, черт возьми...   -  person demoncodemonkey    schedule 28.02.2012


Ответы (2)


Вот как я заставил его работать на сайте, который я сделал, включая Firefox:

<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.mysite.com&amp;send=true&amp;layout=standard&amp;width=450&amp;show_faces=true&amp;action=like&amp;colorscheme=light&amp;font=tahoma&amp;height=80"
    scrolling="no" frameborder="0" style="border: none; overflow: hidden; 
    width: 450px; margin-top:30px; padding-left:2px;
    height: 80px;" allowtransparency="true"></iframe>
person IrishChieftain    schedule 28.02.2012

Проблема была в Adblock Plus. Отключил это, и в Firefox тоже все заработало. Я думаю, что у меня остался какой-то дополнительный анти-фейсбуковый фильтр, оставшийся с давних времен, черт возьми..

person demoncodemonkey    schedule 28.02.2012
comment
Да, это было так. Древний совет LifeHacker по блокировке настойчивой рекламы в Facebook заставил меня добавить фильтр для некоторых доменов Facebook. Хо хм. - person demoncodemonkey; 28.02.2012