Я провел несколько дней, пытаясь решить эту проблему без успеха. Проблема в том, что когда пользователь нажимает на подобную кнопку, он не указывает, что им нравится что-либо на их стене. Хотя код работает правильно в моей тестовой настройке на localhost, он не работает в производстве.Как действие, которое не отображается на стене пользователя
Мой клиент использует плагин галереи изображений для wordpress и плагин lightbox, известный как FancyBox, для отображения более крупных версий изображений, когда пользователь нажимает на миниатюру. Он попросил меня добавить фейсбук как кнопку для каждого fancybox.
Поскольку fanyboxes динамически сгенерированы, я генерирую новую, например, кнопку iframe всякий раз, когда отображается fancybox. URL-адрес, используемый аналогичной кнопкой iframe, уникален для изображения, на которое кликнул пользователь. Код добавляет & фото =/location/of/photo.jpg к URL-адресу галереи. Затем весь пользовательский URL-адрес передается через encodeURIComponent() и передается в iframe.
Вот фрагмент кода используется для генерации IFrame
var currentURL = document.URL,
currentIMG = $("#fancybox-img").attr("src").split("http://www.downsplash.com").pop();
if (currentURL.match("&photo=")) {
var currentURL = currentURL.split("&photo=").shift();
};
var thisURL = encodeURIComponent(currentURL + "&photo=" + currentIMG);
<span id="fancybox-title-over">
<div id="facebook-like" style="display:inline-block;">
<iframe src="//www.facebook.com/plugins/like.php?href=" + thisURL + "&send=false&layout=button_count&width=80&show_faces=true&action=like&colorscheme=dark&font&height=21&appId=314592468583405" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:80px; height:21px;" allowTransparency="true"></iframe>
</div>
</span>
Here is a link to the code running in production.
Подобное код кнопки, кажется, работает без сучка и задоринки, это позволяет вам понравиться и в отличие от фотографий. Единственная проблема заключается в том, что когда фотография нравится, на стене пользователя ничего не появляется.
Примечания:
- Все работает корректно при использовании только базовый URL без обычая & фото =/местоположение/из/photo.jpg
- При тестировании этого кода на локальном хосте это ДЕЙСТВИТЕЛЬНО отправлять сообщения в Facebook ,
Я не уверен, почему эти симпатии не отображаются на стене Facebook пользователей. У кого-нибудь есть идеи?
Получил ли клиент разрешение на публикацию на стене? – Chriseyre2000
Поскольку я просто использую facebook как кнопка iframe, разрешение не требуется. Я не пытаюсь размещать пользовательскую информацию на стене пользователя. Просто тот факт, что им понравилось то, что должно автоматически обрабатываться facebook. –
Это сработало, но мне понравилась фотография ребенка, но на моей временной шкале была размещена чужая фотография. –