Дубли алиасов в Schema.org, по схеме BreadCrumbs

Добрый день! Возможно кому уже приходилось встречаться с внедрением на сайт микроразметки schema.org. При внедрение данной микроразметки я столкнулся со странной ошибкой или багом schema.org, при проверке на валидность разметки через Я.Вебмастер заметил что часть URL дублируется, что не есть хорошо, по моим предположениям, вот что выдаёт Вебмастер Яшки при проверки страницы:
breadcrumblist
	itemType = http://schema.org/BreadcrumbList
		itemlistelement
			listitem
			itemType = http://schema.org/ListItem
			item
				href = http://site.ru/
				text = Магазин
				name = Магазин
				position = 1
		itemlistelement
		listitem
		itemType = http://schema.org/ListItem
		item
			href = http://site.ru/katalog/detskie-oberegi/katalog/
			text = Каталог
			name = Каталог
			position = 2
		itemlistelement
		listitem
		itemType = http://schema.org/ListItem
		item
			href = http://site.ru/katalog/detskie-oberegi/katalog/detskie-oberegi/
			text = Детские обереги
			name = Детские обереги
			position = 3
		itemlistelement
		listitem
		itemType = http://schema.org/ListItem
			href = http://site.ru/katalog/detskie-oberegi/katalog/detskie-oberegi/
			text = Детские обереги
			name = Кулон "Перунов Цвет"
			position = 4
При таком раскладе хлебные крошки передаются совсем не верно. Верная структура выглядит так:
1. http://site.ru/ (Магазин)
2. http://site.ru/katalog/ (Каталог)
3. http://site.ru/katalog/detskie-oberegi/ (Детские обереги)
4. http://site.ru/katalog/detskie-oberegi/kulon-perunov-czvet.html (Кулон "Перунов Цвет")
Возможно кто-то сталкивался с подобной проблемой и может поделиться решением данного нюанса?

Вызов pdoCrumbs:
&showCurrent=`1`
&tpl=`@INLINE <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a itemprop="item" href="[[+link]]"><span itemprop="name">[[+menutitle]]</span></a><meta itemprop="position" content="[[+idx]]" /></li>`

&tplCurrent=`@INLINE <li class="active" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><span itemprop="name">[[+menutitle]]</span><meta itemprop="position" content="[[+idx]]" /></li>`

&tplHome=`@INLINE <i class="fa fa-home"></i> <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a itemprop="item" href="[[~1]]"><span itemprop="name">[[+menutitle]]</span></a><meta itemprop="position" content="[[+idx]]" /></li>`

&tplWrapper=`@INLINE <ul itemscope itemtype="http://schema.org/BreadcrumbList" class="breadcrumb">[[+output]]</ul>`
Все остальные настройки дефолтные.

Если в чанках использовать [[+alias]] то схема собирается верно, но вот только на клиентской стороне крошки отказывают. Не хочется дублировать вызов pdoCrumbs, и скрывать его что бы он отдавал верную схему, а второй был рабочим для пользователей — на правах жесткого костыля…
Виктор
18 апреля 2016, 19:02
modx.pro
3 120
0

Комментарии: 11

Konstantin
18 апреля 2016, 23:58
0
ну так посмотрите что у вас в чанках Крумбса )
там скорее всего пути неправильные, вот и генерирует

или где то в настройках указали как то неправильно адрес сайта
    Виктор
    19 апреля 2016, 00:14
    0
    Настройки crumb вдоль и поперёк использовал. Если в чанках использовать [[+alias]] то схема собирается верно, но вот только на клиентской стороне крошки отказывают. Не хочется дублировать вызов pdoCrumbs, и скрывать его что бы он отдавал верную схему, а второй был рабочим для пользователей — на правах жесткого костыля…
    Михаил
    28 декабря 2018, 15:20
    0
    Присоединяюсь к вопросу,
    такая же проблема, получилось ли исправить у кого нибудь?
    или просьба скинуть рабочий код для примера
    Михаил
    28 декабря 2018, 16:13
    0
    Спасибо!
    Но эффект тот же(
      Александр Иващенко
      28 декабря 2018, 16:24
      0
      упрощенная версия у меня так и норм
      [[pdoCrumbs?
              &to=`[[*id]]`
              &showCurrent=`1`
              &showHome=`1`
              &outputSeparator=``
              &tplWrapper=` @INLINE <ul class="breadcrumb" itemscope="" itemtype="https://schema.org/BreadcrumbList">[[+output]]</ul>`
              
              &tpl=`@INLINE 
              <li itemprop="itemListElement" itemscope="" itemtype="https://schema.org/ListItem">
                  <a itemprop="item" href="[[+link]]">
                  <span itemprop="name">[[+menutitle]]</span></a>
                  <meta itemprop="position" content="[[+idx]]">
              </li>`
              &tplCurrent=`@INLINE <li itemprop="itemListElement" itemscope="" itemtype="https://schema.org/ListItem" class="active">
                  <span itemprop="name">[[+menutitle]]</span>
                  <meta itemprop="position" content="[[+idx]]">
                  <meta itemprop="item" content="http://мойсайт.com/[[~[[*id]]]]">
              </li>`
          ]]
      может просто [[+link]] вместо
        Михаил
        29 декабря 2018, 12:26
        0
        Не, то же не подходит
        на сайте — так же всё отлично, а валидатор яндекс показывает неправильные ссылки
        file.modx.pro/files/8/8/b/88b5c61a151abb68a80c0ba23a3038a9.jpg
          Алексей Яковлев
          11 апреля 2024, 18:56
          0
          Столкнулся с той же бодягой — дублирующих (лишних) вложениях в пути ссылки. Микроразметка здесь ни при чем.

          Опытным путем выяснил, что [[+link]] выдает относительный путь, и плюсует перед ним адрес «крошки».

          И видимо это связано с системной настройкой сайта об использовании вложенных путей (use_alias_path), которая у меня включена.

          Но я не стал выяснять, а просто обнулил путь перед [[+link]]:
          [[++site_url]][[+link]]
          и повторы ушли.
            Алексей Яковлев
            12 апреля 2024, 12:58
            0
            еще проще проблема дублей в относительных адресах решается пропиской в head:
            <base href="[[++site_url]]" />
            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
            11