Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
avgaz

Разметка страницы itemListElement

Рекомендованные сообщения

В консоли гугла вдруг стали появляться страницы с ошибками, ругается на "Отсутствует поле "itemListElement" " типа в "type BreadcrumbList" ссылается на код разметки

<script type='application/ld+json'>
{
   "@context": "http://schema.org",
   "@type": "BreadcrumbList",
   "itemListElement": []
}	
</script>

Ошибки на страницах категорий форума, посмотрел в исходном коде действительно во всех категориях эти данные отсутствуют, в разделах уже присутствуют и там идет название категории, посмотрел на офсайте напрмиер у этой категории https://invisioncommunity.com/forums/forum/307-community-led-resources/ там разметка присутвует и ссылается на главную страницу(Forums) то есть в исходном коде вот так

<script type='application/ld+json'>
{
   "@context": "http://schema.org",
   "@type": "BreadcrumbList",
   "itemListElement": [
       {
           "@type": "ListItem",
           "position": 1,
           "item": {
               "@id": "https://invisioncommunity.com/forums/",
               "name": "Forums"
           }
       }
   ]
}	
</script>

Тут возникает вопрос почему отсутствует и как поправить?

Поделиться сообщением


Ссылка на сообщение

system/Output/Output.php

 

Было

 

		if( \count( $this->breadcrumb ) )
	{
		$jsonLd['breadcrumbs'] = array(
			'@context'	=> "http://schema.org",
			'@type'		=> "BreadcrumbList",
			'itemListElement'	=> array(),
		);

		$position	= 1;

		foreach( $this->breadcrumb as $breadcrumb )
		{
			if( $breadcrumb[0] )
			{
				$jsonLd['breadcrumbs']['itemListElement'][] = array(
					'@type'		=> "ListItem",
					'position'	=> $position,
					'item'		=> array(
						'@id'	=> (string) $breadcrumb[0],
						'name'	=> $breadcrumb[1],
					)
				);

				$position++;
			}
		}
	}

 

Стало

 

		if( \count( $this->breadcrumb ) )
	{

		$position	= 1;
		$elements	= [];

		foreach( $this->breadcrumb as $breadcrumb )
		{
			if( $breadcrumb[0] )
			{
				$elements[] = array(
					'@type'		=> "ListItem",
					'position'	=> $position,
					'item'		=> array(
						'@id'	=> (string) $breadcrumb[0],
						'name'	=> $breadcrumb[1],
					)
				);

				$position++;
			}
		}

		if( \count( $elements ) )
		{
			$jsonLd['breadcrumbs'] = array(
				'@context'	=> "http://schema.org",
				'@type'		=> "BreadcrumbList",
				'itemListElement'	=> $elements,
			);
		}
	}

 

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...