Пользовательская интеграция с Facebook
Я работаю над веб-сайтом электронной коммерции, на странице которого в корзине покупок должна быть кнопка "Поделиться в Facebook" для всех товаров, со следующими требованиями:-
Предположим, что на странице корзины покупок есть 4 товара - "p1", "p2", "p3" и "p4".
Когда пользователь нажимает кнопку "Поделиться" для элемента "p4", ему будет предложено войти, если он не вошел в FB. Это было достигнуто с помощью "
fb:login-button
"Тег FBML.После входа в систему пользователь сможет предоставить пользовательское сообщение во всплывающем окне на моем веб-сайте. Это всплывающее окно также будет содержать название продукта для элемента "p4" и изображение.
Когда пользователь нажимает кнопку "Поделиться" / "Отправить", сообщение с названием и изображением продукта для элемента "p4" будет опубликовано / опубликовано на стене пользователя в Facebook. Обе точки #2 и #3 были выполнены с использованием "
FB.init
"&" FB.ui "основные методы JavaScript SDK.Теперь на моем веб-сайте на странице корзины покупок будет показано, что для элемента "p4" общий доступ к Facebook завершен, и поэтому больше не будет кнопки "Поделиться на Facebook", даже если страница обновляется снова или когда таких продуктов больше. добавлены в корзину. Здесь я не могу выполнить отключение кнопки "Поделиться". Пожалуйста, помогите мне здесь.
Пользователь сможет нажать кнопку "Поделиться" для других продуктов "p1", "p2" и "p3". но во всплывающем сообщении "Поделиться" будет отображаться название продукта и изображение для соответствующих продуктов, а не для последнего элемента "p4". Однако здесь всплывающее окно всегда предоставляет информацию только для последнего элемента "p4". Вместо этого я на самом деле хочу использовать несколько экземпляров Facebook Share. Пожалуйста, помогите мне здесь.
Я упомянул проблемы в вышеупомянутых пунктах, и я страдаю в пунктах № 4 и № 5.
Пожалуйста, помогите мне кто-нибудь и спасибо всем заранее. Пожалуйста, спросите меня, если требуется дополнительная информация.
3 ответа
Facebook не позволяет вам делиться пользовательским текстом / изображениями с помощью кнопки "Поделиться", если вам нужно сделать это, в URL-адресе общего доступа укажите URL-адрес страницы сведений о продукте вместо страницы списка и задайте метаданные на этой странице сведений о продукте.
Другой вариант - установить общие метаданные для всех продуктов.
Вот ссылка, объясняющая, что метаданные Facebook могут понять
Я не могу решить вашу проблему в номере 4, но я думаю, что вы пытаетесь сделать так же просто, как динамически создать ссылку на фейсбук и поделиться ей соответствующим образом.
Я создал jsfiddle, который делает именно это, посмотрите здесь и посмотрите, поможет ли это вам.
Суть кода - это простой обработчик событий jQuery, который настраивает URL-адрес для общего ресурса Facebook и некоторые параметры, учитывая следующий HTML-код:
<ul class="products">
<li id="product-1">
Awesome Snacks
<a class="sharer" href="http://www.yoursite.com/some/url/to/product-1" data-title="Awesome Snacks on Website!">
<span class="liketext">Share</span>
</a>
</li>
</ul>
И следующее определение обработчика событий jQuery:
$('.sharer').click(function(e) {
e.preventDefault();
var title = $(this).data('title');
var url = $(this).attr('href');
var fbSharerUrl = 'http://www.facebook.com/sharer.php?';
var params = { u: url, t: title };
var fbSharerConfig = 'toolbar=0,status=0,width=600,height=400';
window.open(fbSharerUrl + $.param(params), 'sharer', fbSharerConfig);
});
Это создаст для вас ссылку на общий доступ в Facebook на основе атрибутов href и data-title ссылок в вашей корзине.
Посмотрите на jsfiddle, на который я ссылался ранее, так как он также включает в себя немного CSS, чтобы ссылки выглядели как кнопки общего доступа на Facebook:)
Поправьте меня, если я ошибаюсь, но разве использование кнопки iframe-Share не решит все ваши проблемы?