Подтвердить что ты не робот

Изменение атрибута метатеги Facebook с помощью JQuery

Я хочу знать, как я могу использовать JQuery, чтобы заменить атрибут content моих метатег Facebook.

Я искал StackOverflow, и я нашел этот пример:

$("meta[property=og:title]").attr("content", title);
$("meta[property=og:url]").attr("content", url);

В моем коде у меня есть следующие метатеги:

<meta property="og:title" content="some content"/>
<meta property="og:url" content="some content"/>
<meta property="og:site_name" content="some content"/>

Когда я запускаю функцию, которая должна изменять содержимое для переменных "title" и "url", это изменение не выполняется. Те же значения для "контента" все равно остаются теми же.

Я хочу знать, как, если это возможно, использовать JQuery для изменения значения метатегов Facebook.

4b9b3361

Ответ 1

Определенно возможно изменить метатеги с помощью jQuery, но я не думаю, что вы достигнете того, чего хотите, так как метатеги вытягиваются скребком FB. Скребок FB выходит и сбрасывает вашу страницу, чтобы читать метатеги.

Редактирование мета-тегов

Вы можете обновить атрибуты своей страницы, обновив страницу  теги. Обратите внимание: og: title и og: type доступны только для редактирования первоначально - после того, как ваша страница получает 50, нравится, что заголовок становится фиксированным, и после того, как ваша страница получит 10 000 символов, тип станет фиксированным. Эти свойства фиксируются, чтобы избежать неожиданных пользователей, которым понравилось страницу уже. Изменение заголовков или тиков после этих ограничений не достигнуты, ваша страница сохраняет исходное название и тип.

Чтобы изменения отражались на Facebook, вы должны вынудить свою страницу быть очищенным. Страница соскабливается, когда администратор нажимает на страницу кнопку "Избранное" или когда URL-адрес введен в URL-адрес Facebook ЛИНТЕР. Вы можете программно заставлять вашу страницу очищаться cURL'ing linter. Например...

https://developers.facebook.com/docs/opengraph/

Ответ 2

Вот как это сработало для меня:

$('meta[name=og\\:url]').attr('content', newVideoUrl);

Обратите внимание на двойную обратную косую черту, без нее Jquery завершится с ошибкой.

Ответ 3

Скребок Facebook не выполняет JavaScript.

Таким образом, использование Javascript для изменения метатегов для отображения другого общего содержимого не будет работать.

Вам нужно будет использовать код сервера, чтобы записать их по мере необходимости в источнике HTML.