SEO для нашего домена страдает

С помощью SemRush мы обнаружили следующие проблемы:

  1. 27 страниц заблокированы для сканирования, например: reflex-dev · Discussions · GitHub
  2. Проблемы в карусели на странице reflex-dev · Discussions · GitHub для поля position вложенного элемента ListItem требуется значение value, а также поля item или url: поля item и url взаимно исключают друг друга для вложенного элемента ListItem. Пожалуйста, удалите одно из них.

Насколько мне известно, страницы профилей намеренно блокируются от индексации:

3 лайка

Хорошо, это имеет смысл в отношении того, чтобы не сканировать страницы профилей.

По поводу проблем в карусели на странице О нас - Reflex: для поля position требуется значение для вложенного ListItem, а также поля item и url: эти поля взаимоисключающие для вложенного ListItem. Пожалуйста, удалите одно из них.

Что вы думаете?

Я не знаю насчёт этого, я оставлю ответ тому, кто разбирается в этом больше.

Думаю, что SemRush некорректно анализирует страницу. Если только что-то не изменилось, Discourse не использует тип схемы Carousel. Есть пост от 2022 года об этой проблеме: SemRush Structured Data - #4 by Falco

При тестировании https://forum.reflex.dev/about на schema.org обнаруживаются типы схем ItemList, AboutPage и SiteNavigationElement. Ошибок или предупреждений не сообщается. Вы можете проверить результаты здесь: https://validator.schema.org/#url=https%3A%2F%2Fforum.reflex.dev%2Fabout.

4 лайка

Интересно, значит, результаты здесь неверны, так как здесь используется Google Search Console: https://search.google.com/test/rich-results/result/r%2Fcarousels?id=kB-_lj4GOiubX0YgxJtjpA

1 лайк

Я вижу несколько проблем в коде

1. Неправильное размещение свойства url

      <div itemprop='itemListElement' itemscope itemtype='http://schema.org/ListItem'>
        <meta itemprop='url' content='/u/elvis'>
        <a href='/u/elvis' itemprop='item'>
          <span itemprop='image'>
            <img width="45" height="45" class="avatar" src="https://sea1.discourse-cdn.com/flex001/user_avatar/forum.reflex.dev/elvis/45/31_2.png">
          </span>
          <span itemprop='name'>
            elvis
              - elvis
          </span>
        </a>
      </div>

itemListElement представляет собой ListItem.

У ListItem есть свойство item, которое является Thing.
ListItem не может иметь свойство url.
Это свойство может быть у Thing. См. ListItem - Schema.org Type

Поэтому строку <meta itemprop='url' content='/u/elvis'> следует перенести на две строки ниже, внутрь значения свойства item.

      <div itemprop='itemListElement' itemscope itemtype='http://schema.org/ListItem'>
        <a href='/u/elvis' itemprop='item'>
          <meta itemprop='url' content='/u/elvis'>
          <span itemprop='image'>
            <img width="45" height="45" class="avatar" src="https://sea1.discourse-cdn.com/flex001/user_avatar/forum.reflex.dev/elvis/45/31_2.png">
          </span>
          <span itemprop='name'>
            elvis
              - elvis
          </span>
        </a>
      </div>

2. Отсутствует свойство position

Здесь ситуация чуть более субъективна. Google указывает здесь Carousel (ItemList) Structured Data | Google Search Central  |  Documentation  |  Google for Developers, что это свойство обязательно.

Таким образом, Google говорит: «это обязательно».
Это означает «Google требует этого», а не «это требуется схемой».

3. Неисправный валидатор Schema.org

Не знаю, что именно он делает, но он не проводит проверку корректно. Он должен был обнаружить проблему №1.

2 лайка