Новая кнопка Мне нравится Facebook проверка HTML

После добавления новой кнопки Мне нравится Facebook на моей странице это, больше не не проверяет использование XHTML строгий стандарт. Эти две ошибки, с которыми я сталкиваюсь:

  1. Все meta теги свойства говорят, что нет никакого свойства атрибута;
  2. Все переменные, используемые в строке кнопки Мне нравится, перечислены, что нет никаких атрибутов для нее. Строка следующие:

    <fb:like href="http://www.pampamanta.org" layout="button_count" show_faces="false" width="120" action="like" font="arial" colorscheme="light"></fb:like>

36
задан Ilia Rostovtsev 5 September 2012 в 08:59
поделиться

4 ответа

Вот решение, как не менять doctype:

Как предложил zerkms, добавление пространства имен "fb" применимо только для атрибутов "fb:". Атрибут "property" метатега остается недействительным XHTML.

Как вы знаете, Facebook опирается на соответствие RDFa, поэтому вы можете использовать следующий doctype:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd"> 

Использование RDFa в большинстве случаев приносит больше проблем, чем простое решение проблемы FB.

как предложил _timm, динамическая запись метатегов в dom не имеет никакого смысла. Одно из основных применений этих метатегов fb - это парсинг FB-ботом целевой страницы "share" или "i like" (страница действия) для предоставления пользовательских заголовков, изображений и анкорных меток для автозаполнения постов на стене facebok. Учитывая этот факт и тот факт, что facebook наверняка использует простую выборку страницы для чтения в доставленном html-ответе без какой-либо возможности анализа связанного метатега, вводимого javascript, предполагаемая функциональность просто не сработает.

Существует довольно простое решение, обеспечивающее компромисс между проверкой XHTML и успешным разбором facebook: оберните мета-теги facebook в html-комментарии. Это обходит парсер w3c, и facebook все равно распознает мета-теги, потому что игнорирует комментарии.

<!--
<meta property="og:image" content="myimage.jpg" />
<meta property="og:title" content="my custom title for facebook" />
-->
43
ответ дан 27 November 2019 в 05:36
поделиться

вы пытались добавить xmlns:fb="http://www.facebook.com/2008/fbml"?

1
ответ дан 27 November 2019 в 05:36
поделиться

FBML не будет проверяться, так как это недопустимый XHTML. Валидатор W3C не знает, что с ним делать. Ошибки можно спокойно игнорировать.

Если вам необходима валидация, вы можете использовать тег