Локальное внедрение и тестирование социальных плагинов Facebook
Я новичок в разработке Facebook и хотел бы добавить плагин комментариев на свой сайт.
Я создал приложение на Facebook на случай, если оно понадобится. но так как я еще не зарегистрировал свой домен, я оставил раздел App Domain
пустым.
Затем я скопировал код, данный мне по адресу: http://developers.facebook.com/docs/reference/plugins/comments/ для тестирования плагина. Но когда я проверил код в html-файле, ничего не обнаружилось.
- мне нужен код, чтобы использовать комментарии плагин?
- Если мне нужен appid, должен ли я сначала купить домен и добавить его в раздел
App Domain
? могу ли я просто протестировать плагин с помощью urlexample.com
? - В общем, каков самый простой способ заставить плагин comments работать?
Обновление: Основываясь на ответе Lix, я отредактировал файл hosts и добавил:
127.0.0.1 www.example.com
127.0.0.1 example.com
127.0.0.1 http://www.example.com
127.0.0.1 http://example.com
Вот моя тестовая страница:
<html>
<head>
<title>My Web page</title>
</head>
<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_US/all.js#xfbml=1";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<div class="fb-comments" data-href="http://example.com" data-num-posts="2" data-width="470"></div>
</html>
Но все равно не повезло.
2 ответа:
Насколько я знаю, вам действительно нужно приложение для использования плагина комментариев (для функциональности модерации, я полагаю). Если вы посмотрите на код, который Facebook генерирует для поля комментариев, вы увидите, что у него есть идентификатор приложения:
<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_US/all.js#xfbml=1&appId=MY_APP_ID"; // <-- here fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script>
Чтобы ваше приложение работало правильно локально, вам нужно будет настроить виртуальный хост. Я обычно устанавливаю их с именами, такими как
http://website1.dev
.частью настройки виртуального хоста, как упоминает Lix, является Добавление домена к вашему
hosts
файл для разрешения в вашем localhost (127.0.0.1).другая часть этого процесса-создание виртуального хоста на локальном веб-сервере для вашего веб-сайта. Таким образом, вы фактически получаете доступ к своему локальному сайту в браузере как
http://example.com
, а неlocalhost/example.com
. Есть много хороших статей о том, как настроить Apache для этого, вот два:
- http://www.dangrossman.info/2007/08/25/multiple-local-websites-with-apache-in-windows/
- http://mezzoblue.com/archives/2004/08/05/virtual_host/
Затем убедитесь, что настройки администратора вашего приложения Facebook настроены правильно, чтобы разрешить домен
[6] Бог удачи!http://example.com
. При настройке приложения " веб-сайт "необходимо указать"URL-адрес сайта". Вы также можете добавить свой новый локальный домен в качестве приложения "App Domain".