Я работаю над обновлением сайта div с помощью различных статей. Я должен поставить кнопку общего доступа в Facebook для каждой статьи. Обновление производится в Ajax с помощью jQueryFacebook share button и Ajax
Что я делаю: со ссылкой на страницу article.php, я отправляю идентификатор. URL выглядит следующим образом:
На странице index.php, я включил:
<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script>
<script>
// Facebook
(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/fr_FR/sdk.js#xfbml=1&version=v2.7";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
На странице article.php,
<div id="fb_container" class="fb-share-button" data-href="<?PHP
$url = "http://www.website.org/index.php?page=article?id=".$id;
echo $url;
?>" data-type="button_count">
</div>
<script>
$(document).ready(function() {
$('meta[property=og:title]').remove(); $('head').append('<?PHP echo $titre['contenu']; ?>');
// Same for the others meta tags
FB.XFBML.parse(document.getElementById('fb_container'));
});
</script>
Мета-теги обновляются, это нормально. Но кнопка совместного доступа не работает: - в первой загрузке она видна, но общая страница не отображает изображение и метаинформацию - когда мы читаем другую статью, кнопка общего доступа не отображается
Любое предложение?
Вы не можете установить метатеги OG через JS, скребок FB не заботится о JavaScript. – CBroe
Первое определение метатегов OG не задано динамически, только когда загружаю другую статью. Необходимо использовать первые значения, но здесь это не работает. Howether, это не является задачей функции FB.XFBML.parse для синтаксического анализа содержимого после динамического изменения? –
Выполняет ли '$ (document) .ready' выполнение при загрузке кода через AJAX? И как вы заменяете контент - убедились ли вы, что идентификатор, который вы ищете, уникален в DOM, даже после того, как вы динамически загружаете новый материал? – CBroe