2011-01-30 1 views
2

Я новичок в Facebook, и я пытаюсь добавить кнопку Facebook на свой сайт. В разделе разработчика Facebook, я получил следующий код для добавления кнопки, как:Facebook Like box - возможность любить текущую страницу с помощью динамического URL-адреса

<iframe src="http://www.facebook.com/plugins/likebox.php?href=http://www.mysite.com&width=292&colorscheme=light&show_faces=false&stream=false&header=false&height=62" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:292px; height:62px;" allowTransparency="true"></iframe> 

Теперь я хочу, чтобы иметь возможность разместить кнопку, как на каждой странице моего сайта. По этой причине, я думаю, использование статической ссылки в приведенном выше коде будет бесполезным. Поэтому у меня есть своя функция, которая заполнит текущей страницы URL (включая любые переменные, которые могут присутствовать в URL) в постоянной называется: CURRENT_URL

Так мой пересмотренный код кнопки Like выглядит следующим образом:

<iframe src="http://www.facebook.com/plugins/likebox.php?href=<?php echo CURRENT_URL; ?>&width=292&colorscheme=light&show_faces=false&stream=false&header=false&height=62" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:292px; height:62px;" allowTransparency="true"></iframe> 

Когда я использую вышеуказанный пересмотренный код на своем веб-сайте, я не вижу коробку Like. Вместо этого я вижу страницу ошибки в iframe, который говорит:

The page you requested was not found. 
You may have clicked an expired link or mistyped the address. Some web addresses are case sensitive. 

Если я общий <?php echo CURRENT_URL; ?, он показывает правильный URL. Нет никакой проблемы со значением константы. Это заставляет меня чувствовать, что iframe просто пытается загрузить имя веб-сайта без разбора постоянного значения. Мне просто нужен код, который я могу использовать на веб-сайте без необходимости вручную изменять значение кнопки Like для каждой страницы моего сайта.

Так что мой вопрос:

Как я могу сделать это IFrame обнаружить текущий URL страницы (включая любые переменные, которые я могу быть проходящими через URL) и заполнить Like значение кнопки URL для текущего URL страницы так что пользователю может понравиться эта страница.

Вся помощь приветствуется. Спасибо.

UPDATE (решение):

я узнал, что Theres большую путаницу обо всем этом. На самом деле есть 2 типа подобных функций. Одна из них - обычная кнопка Like, а другая - как ящик. Вот ссылки:

Как Баттон: http://developers.facebook.com/docs/reference/plugins/like

Как Box: http://developers.facebook.com/docs/reference/plugins/like-box

Используйте Как кнопки кода, если вы хотите быть людьми нравятся отдельные страницы Ваш сайт. The Like Коробка просит вас: Facebook Page URL. Это означает, что вы НЕ МОЖЕТЕ использовать его для своих пользователей, как ваши веб-страницы. (Я все еще работаю над пониманием URL-адреса страницы Facebook и того, как он работает, и когда он не работает)

Надеемся, что эта информация поможет кому-то еще пройти через те же проблемы и смятение.

ответ

3

Вы можете просто повторить кнопку, как и вы не будете иметь эти проблемы - что-то вроде этого:

function likeButton($url_to_like, $action = "like") { 
    return sprintf('<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><fb:like href="%s" show_faces="true" width="450" action="%s"></fb:like>', 
$url_to_like, $action); 
} 

Я использую Версия JavaScript, но это то же самое с IFRAME :)

+0

Благодарим за ответ. Я обновил свою публикацию с возможным решением. Я использовал код для Like Box, когда на самом деле я должен использовать код для кнопки Like. Ваш код был указателем на мое решение. Поэтому я выбираю ваш ответ как свое решение. Спасибо, что помогли мне. – Devner

+0

Кстати, вы знаете, что такое URL-адрес страницы Facebook и как ее использовать? Я попытался посетить www.facebook.com/mycompany, и он вернул ошибку 404. Это означает, что моя страница не найдена, хотя я ее создал. Нужна ли на бизнес-странице какая-либо активация? Я очень новичок в этом и пока не знаю, как это сделать. Познакомимся с дополнительными данными, которые могут возникнуть у вас. Благодарю. – Devner

+0

Я думаю, что на страницах Facebook есть случайный идентификатор после названия страницы (т. Е. Http://www.facebook.com/pages/WTF-Test-Page/142187565841842) Проверьте ссылку после создания вашей страницы :) –

0

Использование функции - отличная идея. У нас такая же проблема на нашем сайте, посмотрите здесь (TAPNET Online Backup), потому что мы используем общий фрагмент кода для всех страниц на нашей правой боковой панели. Я попытался удалить значение в href="", и он должен потянуть текущий URL-адрес, потому что он работает. Я вижу то же самое #, что и раньше, и когда мне нравятся любые страницы, которые не понравились до того, как число будет увеличиваться, как ожидалось. Попробуй это.

+1

Спасибо, что сообщили мне. Попробуй это. – Devner

Смежные вопросы