Какие структурированные данные JSON-LD использовать для блога с несколькими параграфами и несколькими изображениями? - PullRequest
0 голосов
/ 20 января 2019

Я создал следующий JSON-LD для поста в моем блоге:

{
      "@context": "http://schema.org",
      "@type": "BlogPosting",
      "mainEntityOfPage": {
        "@type": "WebPage",
        "@id": "https://www.example.com"
      },
      "headline": "My Headline",
      "articleBody": "blablabla",      
      "articleSection": "bla",
      "description": "Article description",
      "inLanguage": "en",
      "image": "https://www.example.com/myimage.jpg",
      "dateCreated": "2019-01-01T08:00:00+08:00",
      "datePublished": "2019-01-01T08:00:00+08:00",
      "dateModified": "2019-01-01T08:00:00+08:00",
      "author": {
        "@type": "Organization",
        "name": "My Organization",
        "logo": {
          "@type": "ImageObject",
          "url": "https://www.example.com/logo.jpg"
        }
      },
       "publisher": {
        "@type": "Organization",
        "name": "Artina Luxury Villa",
         "name": "My Organization",
        "logo": {
          "@type": "ImageObject",
          "url": "https://www.example.com/mylogo.jpg"
        }
      }
    }

Теперь у меня есть несколько постов в блоге, которые содержат несколько абзацев, и каждый абзац сопровождается изображением.Любые идеи, как я могу изобразить такую ​​структуру с помощью JSON-LD?

Фон

Я создал простой блог, который использует файл JSON для 2 целей: (а) наполнить блог постамивместо этого используя БД (используя XMLHttpRequest и JSON.parse) и (b), чтобы добавить структурированные данные JSON-LD в код для целей SEO.

Когда я читаю файл JSON, я должен знать, какойК какому абзацу текста относится изображение, чтобы правильно его отобразить.

1 Ответ

0 голосов
/ 23 января 2019

Примечание: Поскольку вам, по-видимому, это нужно только для внутренних целей, и, как правило, нет необходимости публично предоставлять данные об этом виде структуры, я думаю, что было бы лучше не , чтобы предоставить общественности данные Schema.org об этом. Таким образом, вы можете, например, использовать его для создания страницы, а затем удалить ее снова (или что-то еще, что подходит для вашего случая). Тогда для этого также будет возможно использовать собственный словарь (в вашем собственном домене), если он лучше соответствует вашим потребностям.


Вы можете использовать свойство hasPart, чтобы добавить WebPageElement для каждого абзаца + блока изображения.

Каждый WebPageElement может иметь text и image (и, опять же, hasPart, если вам нужно их вложить).

Обратите внимание, что массивы JSON-LD по умолчанию неупорядочены. Вы можете использовать @list, чтобы сделать заказ.

"hasPart": { "@list":
  [

    {
      "@type": "WebPageElement",
      "text": "plain text",
      "image": "image-1.png"
    },

    {
      "@type": "WebPageElement",
      "text": "plain text",
      "image": "image-2.png"
    }

  ]
}

Для верхнего / нижнего колонтитула публикации блога можно использовать более конкретный WPHeader / WPFooter вместо WebPageElement.

...