Как использовать JSON-LD на моей странице, на которой уже есть контент?


У меня есть веб-сайт, который я создал только для того, чтобы проверить свои навыки CSS, JS и PHP. Я записал данные в простые HTML-теги. Теперь я услышал о Микроданных, RDFa и JSON-LD. И Google рекомендует использовать JSON-LD для структурированных данных, когда это возможно.

Поэтому я просто хочу спросить, в Schema.org Формат микроданных, они говорят добавлять различные атрибуты в теги HTML, что можно сделать, просто поместив атрибуты в мой уже написанные HTML-теги. Но если я хочу использовать JSON-LD, как рекомендует Google, как я должен это сделать?

Должен ли я переписать весь свой контент, удалив его из HTML-тегов и записав его в формате script (как определено в JSON-LD)?

Например, изображение ниже содержит вывод кода, который я написал в простых HTML-тегах с их свойствами в CSS, за которым следует фрагмент кода для этого.

Code output

<h2>Timing</h2>
    <p><?php echo $Timing; ?></p>
</div>
<div class="site-info">
    <h2>Days</h2>
    <p><?php echo $OpeningDays; ?></p>
</div>
<div class="site-info">
    <h2>Bus Stand</h2>
    <p><?php echo $BusStandName; ?></p>
</div>
<div class="site-info">
    <h2>Bus Numbers</h2>
    <p><?php echo $BusNumbers; ?></p>
</div>
<div class="site-info">
    <h2>Tariff</h2>
    <p><?php echo $Fees; ?></p>
</div>

Итак, как теперь я должен редактировать свой код (учитывая например) сделать его структурированными данными в JSON-LD, не влияя на фактический дизайн страницы?

Author: unor, 2017-10-19

1 answers

Ничего плохого в микроданных или RDFa

Прежде всего, игнорируйте рекомендации Google, если вы согласны с использованием микроданных или RDFa. Я думаю, что есть только два случая, когда вы должны использовать JSON-LD вместо микроданных/RDFa:

  • Если вам нужно добавить структурированные данные с помощью JavaScript на стороне клиента.
  • Если вам слишком сложно добавить атрибуты микроданных/RDFa к существующим элементам HTML.

Во всех остальных случаях предпочтительнее, чтобы используйте микроданные или RDFa ( сравнение ) вместо JSON-LD, потому что вам не нужно дублировать свой контент.

Если я правильно понимаю ваш случай, вы, похоже, не используете JavaScript для его добавления, и, похоже, вам будет легко добавить атрибуты к существующим элементам HTML (даже проще, чем добавить отдельный элемент script), поэтому я бы рекомендовал использовать RDFa.

Как добавить JSON-LD

Вы не трогаете существующий HTML/контент. Вместо, ты

  • добавьте элемент script где-нибудь ( может быть в head или body), и
  • добавьте в него свои структурированные данные (тем самым дублируя свой контент).

Если вы не хотите использовать для этой цели какую-либо PHP-библиотеку JSON-LD, вы можете сгенерировать JSON-LD аналогично тому, как вы генерируете свой HTML.

Так что, если у вас есть это где-то на вашей странице, чтобы показать имя человека

<div>
  <p>Name: <?php echo $Name; ?></p>
</div>

Вы можете добавить это в свой JSON-LD script, чтобы добавить этот человек и его имя

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "Person",
  "name": "<?php echo $Name; ?>"
}
</script>

Для сравнения: Как добавить микроданные

<div itemscope itemtype="http://schema.org/Person">
  <p>Name: <span itemprop="name"><?php echo $Name; ?></span></p>
</div>

Для сравнения: Как добавить RDFa

<div typeof="schema:Person">
  <p>Name: <span property="schema:name"><?php echo $Name; ?></span></p>
</div>
 4
Author: unor, 2017-10-19 22:55:59