google plus не показывает фрагмент метаинформации из документов xhtml

Я уже некоторое время борюсь с этим, но не могу понять даже почему это не работает. Возьмите этот простой тестовый код XHTML:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>foobar</title>
        <meta name="description" content="baz" />
    </head>
    <body vocab="http://schema.org/" typeof="Article">
        <h1 property="headline">Some title</h1>
        <p property="description">some arbitrary text</p>
        <p>and even more of it</p>
    </body>
</html>

(для тестирования с помощью google plus это также временно доступно здесь, и здесь вы можете найти простая HTML-версия)

Если вы вставите ссылку на XHTML-версию в g+, вы обнаружите, что она вообще не может ее проанализировать. Он просто покажет ссылку. Однако версия HTML, похоже, анализируется. Оба хорошо анализируются в тестере расширенных фрагментов от Google. Более того, у нас есть данные, свидетельствующие о том, что расширенные сниппеты наших XHTML-сайтов используются в поиске Google.

Тип контента правильно объявляется как application/xhtml+xml для версии xhtml, и я не могу понять никакой другой проблемы. Я уже пытался не указывать xml-декларацию и использовать строгий тип документа XHTML 1.1, но безуспешно.

Итак, мой вопрос (ы):

  1. Почему g+ не показывает фрагмент вообще для этого файла в версии XHTML, хотя facebook показывает?
  2. Можно ли это как-то исправить, не сбрасывая XHTML, и если да, то как?

person Jonas Schäfer    schedule 14.09.2012    source источник
comment
обновление: я все еще жду ответа от Google - в настоящее время мы работаем над проблемой, пытаясь предоставить HTML клиенту google-plus, хотя он рекламирует совместимость с xhtml.   -  person Jonas Schäfer    schedule 23.10.2012
comment
Я столкнулся с той же проблемой - она ​​когда-либо решалась? Если нет, то как идентифицировать бота Google, который будет обслуживать его в формате HTML?   -  person Steve Eynon    schedule 11.07.2014
comment
Нет, другого разрешения я не знаю. Бот Google может быть идентифицирован как что-то вроде Firefox версии 6. Вы должны быть в состоянии сопоставить его, ища Firefox/6. (может быть, также Gecko/6. — я уже точно не помню, и между парсингом UA слишком много абстракции и обходной путь в кодовой базе, чтобы быть уверенным) в строке User Agent.   -  person Jonas Schäfer    schedule 11.07.2014


Ответы (2)


Я предполагаю, что синтаксический анализатор, который использует g+, может не поддерживать XHTML и, возможно, выйдет из строя, если он не может обрабатывать медиа-тип MIME application/xhtml+xml. В прошлый раз я слышал, что инструмент тестирования g+ и Google Rich Snippet не использует одну и ту же цепочку инструментов, поэтому вполне вероятно, что то, что работает в инструменте тестирования Rich Snippet, может не работать где-либо еще, хотя это хороший знак, если это работает в инструменте тестирования. . Я думаю, что в будущем Google будет согласовывать все свои продукты с возможностями инструмента для тестирования расширенных фрагментов.

Есть ли у вас какая-либо конкретная причина для использования XHTML в отличие от HTML или HTML5, используемого в качестве text/html?

person scor    schedule 14.09.2012
comment
Вдобавок к тому, что последние браузеры портят рендеринг веб-сайтов без XHTML (потому что они идеально перемещают блочные элементы HTML5 из ​​других блочных элементов), я просто предпочитаю XHTML5. Кроме того, веб-фреймворк, который я использую, обслуживает XHTML и HTML в зависимости от заголовков Accept, отправленных пользовательским агентом, за некоторыми исключениями. Кроме того, в запросе явно указывается application/xhtml+xml;q=1.00. Они не могут быть такими злыми, не так ли? (не говоря уже о том, что набор инструментов XHTML + XSL, поэтому обслуживание HTML является дополнительной нагрузкой на сервер, поскольку необходимо преобразование) - person Jonas Schäfer; 14.09.2012

Микроданные из вашего примера не соответствуют ожидаемому формату. Вы можете создать необходимые микроданные по адресу: https://developers.google.com/+/plugins/snippet/

Обратите внимание на отсутствующие атрибуты itemprop, itemscope и подобные:

<body itemscope itemtype="http://schema.org/Product">
  <h1 itemprop="name">Shiny Trinket</h1>
  <img itemprop="image" src="{image-url}" />
  <p itemprop="description">Shiny trinkets are shiny.</p>
</body>
person BrettJ    schedule 17.09.2012
comment
Я использую RDFa, который также отлично распознается в HTML-версии. Я не могу использовать микроданные, так как они не будут работать с XHTML. Тем не менее, RDFa (как облегченная, так и не облегченная) поддерживается Google, так что это кажется дезинформацией. - person Jonas Schäfer; 18.09.2012