web-dev-qa-db-ja.com

1970年以前の日付を持つリッチスニペットイベントをGoogleが処理できないのはなぜですか

Googleの Rich Snippet Test Tool を使用して、イベントデータを正しく認識できませんでした(多くの sermons が1947年に遡るWebサイトにあります)。

最後に、最近の日付を使用するときにそれを認識するようになりました。テストツールにコピーして貼り付けることができるテストコードを次に示します。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">
<html xmlns:v="http://rdf.data-vocabulary.org/#" xmlns="http://www.w3.org/1999/xhtml">
<head><title>test</title></head>
<body>
<div typeof="v:Event">
<span property="v:eventType" content="Sermon">Prediking</span><br />
<p property="v:startDate" content="1957-09-08T00:00:00"><strong>Date</strong><br />08-09-1957</p>
<p><strong>Title</strong><br /><span property="V:summary">MyEvent</span></p>
<p rel="v:location"><strong>Location</strong><br /><span typeof="v:Organization"><span property="v:name">Town Hall</span> <span rel="v:address" typeof="v:Address"><span property="v:locality">Placeville</span>, <span property="v:region">AZ</span> </span></span></p>
</div></body></html>

年を1957年から1970年に変更すると、突然それが認識されます!

私が受け取っているエラーは一般的なものです:

プレビューを生成するには、開始日と概要が必要です。さらに、Webページにイベントのリストが含まれている場合、URLは必須です。それ以外の場合、Webページが単一のイベントに関するものである場合、場所は必須です。詳細については、イベントのヘルプページを参照してください。

ある種の逆「ミレニアム」バグのように見えます!

3
Louis Somers

nix時間 は1970年1月1日に始まります。その時間は「unix時間エポック」と呼ばれます。

Googleは日付をUNIXタイムスタンプとして内部的に保存しているため、1970年以前の日付を処理できない可能性があります。

5

テストコードにいくつかのエラーが含まれているため、最小限の例にするために不要なデータを削除しました。

<!DOCTYPE html>
<html>
<head><title>Google Structured Data Testing Tool: date bug?</title></head>
<body>

<div vocab="http://rdf.data-vocabulary.org/#" typeof="Event">
  <p property="startDate">1947-09-08</p>
  <p property="summary">Something</p>
  <p property="location">Somewhere</p>
</div>

</body>
</html>

Google構造化データテストツールcanは「1970年より前の日付」を処理できます。

それらの年はエラーを与えません:

  • 1600
  • 1700
  • 1900
  • 2000年
  • 2002
  • 2300

それらの年はエラーを与えます:

  • 1500
  • 1800
  • 1905
  • 1947
  • 2100
  • 2200

does n’t は、Unix時間の開始日に関連しているようです。

何がこのバグを引き起こす可能性があるのか​​分かりません。

3
unor