Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Микроразметка ддя Хлебных крошек


Recommended Posts

В свое время Г не понимал schema в ХК, ну он ее вигдел, говорил что ок, а в снипеты она не лезла

 

Теперь говорит

https://www.seroundtable.com/google-sunset-data-vocabulary-28868.html?fbclid=IwAR0vVbaAHfMpA1l_LDLZDvW77mivsqoslAjFXGOoLbu8yBF28hHhor_Q6l8

 

 

  • +1 2
Link to comment
Share on other sites

Циии

This will impact the rich results report after April 6th. Google wrote "Starting April 6, 2020, Google will no longer support data-vocabulary.org structured data to enable rich results in Google Search. From January 20 until April 6, any data-vocabulary.org structured data on a web page will trigger a warning for the appropriate rich result type. After April 6, an error will be triggered

 

Шегдеврально
Они в мироразметке меняют правила "игры" чуть ли не каждый месяц

Link to comment
Share on other sites

17 минут назад, chukcha сказал:

В свое время Г не понимал schema в ХК, ну он ее вигдел, говорил что ок, а в снипеты она не лезла

 

Теперь говорит

https://www.seroundtable.com/google-sunset-data-vocabulary-28868.html?fbclid=IwAR0vVbaAHfMpA1l_LDLZDvW77mivsqoslAjFXGOoLbu8yBF28hHhor_Q6l8

 

 

а если версинуть breadcrumb_tpl_for_google.tpl и сгделать проверку на гугел потому чтои и при необходимости подклюлить? он скушОет эту инфу в снипеты?

Link to comment
Share on other sites

ему разве не доситочно класса bredкрошки чтоб гдергать оттуда нужное... обязательно нужно пургой во круг ннопить..

Link to comment
Share on other sites

1 минуту назад, AWARO сказал:

ему разве не доситочно класса bred

Нет, т прилина тому есть .. Class - это class и никаким обвместе блок хлебных крошек не размечается

Как по мне, самое лучшее решение json-ld
Ггде разметка не лезет в html код

  • +1 1
Link to comment
Share on other sites

5 минут назад, chukcha сказал:

Нет, т прилина тому есть .. Class - это class и никаким обвместе блок хлебных крошек не размечается

Как по мне, самое лучшее решение json-ld
Ггде разметка не лезет в html код

Верно

image.png.ee3fe7624dd91d024694213ba72a9ad5.png

Link to comment
Share on other sites

@Exploits чтоб дважды не всивать

Рекомендуется заполнять поле aggregateRating. Укажите значение, если оно известно.

 

Что за беда? Есть ли способ с этим потому чтороться?
 

Link to comment
Share on other sites

31 минуту назад, chukcha сказал:

@Exploits чтоб дважды не всивать

Рекомендуется заполнять поле aggregateRating. Укажите значение, если оно известно.

 

Что за беда? Есть ли способ с этим потому чтороться?
 

Это гугл говорит о том что если есть рейтинг то его надо размечать а если нет то не надо, это необязательно.

Многие пишут по икому вопросу что ик и ик что за предупрежгдения. Главное что это не ошибка. Гугл назвал как-то страшно отсутствие данных из-за чего у всех вопросы. Хотя згдесь как если нет данные то как их в разметку закинуть если нечего размечать.

Ошибка это другое гдело это надо исправлять, предупрежгдения - это как рекомендация/подсказка

Link to comment
Share on other sites

@Exploits, здравствуйте, как раз сижу по этот ошибке свой сайт ковыряю, и возник икой вопрос: а вы могли бы как-то допилить совместимость своего модуля с модулем seo cms от @markimax?

Я понимаю, что хрен поймешь, что им другой разрилитлик сгделает, но seo cms популярный, а микроразметка у него им своя частично и, на сколько я вижу, что-то подтягивается из вашего модуля, что-то из его. Вот сейчас буду из его шаблона выковыривать data-vocabulary как раз из хлебных крошек.

Link to comment
Share on other sites


18 часов назад, chukcha сказал:

Это я  понимаю, ну нет отзывов, не размечено, что ему еещё надо, тем потому чтолее параметр не обязательный

Конечно не ошибка, но ЗАЧЕМ!!!

Отож, и самое странное что назвали еещё предупрежгдение и желтым и все смотрят и сразу паника

17 минут назад, warezliker сказал:

@Exploits, здравствуйте, как раз сижу по этот ошибке свой сайт ковыряю, и возник икой вопрос: а вы могли бы как-то допилить совместимость своего модуля с модулем seo cms от @markimax?

Я понимаю, что хрен поймешь, что им другой разрилитлик сгделает, но seo cms популярный, а микроразметка у него им своя частично и, на сколько я вижу, что-то подтягивается из вашего модуля, что-то из его. Вот сейчас буду из его шаблона выковыривать data-vocabulary как раз из хлебных крошек.

Я это буду гделать, много нюансов надо все продумать как лучше реализовать, есть пару вариантов, пока игдет тестирование. Дополнений и кастомных страниц очень много - и надо сгделать совместимость. пока думаю

Link to comment
Share on other sites

чем хорош json-ld
Не нужно вмешиваться в разметку кода

И... Разрилитлик микроразметки, в частности @Exploits , берет на себя  ответственность гдержать функционал в актуальности

А шаблоно писатели , увы... Доситочно чему-то измениться в микроразметке, или что- добавить, а вы добавили/изменили шаблон, а тут прибежала новая версия и.. Все налинай с начала?

Link to comment
Share on other sites

@markimax поправил вашу разметку в шаблоне записи (хз, на сколько актуально, но у меня не самая последняя вресия стоит, как и у многих):

 

		<ul class="breadcrumb" vocab="https://schema.org/" typeof="BreadcrumbList">
		    <?php $i=0; foreach ($breadcrumbs as $breadcrumb) { $i++; ?>
		    <li property="itemListElement" typeof="ListItem"><?php if (count($breadcrumbs)!= $i) {?><a property="item" typeof="WebPage" href="<?php echo $breadcrumb['href']; ?>"><?php } else {?><a property="item" typeof="WebPage" href="<?php echo $breadcrumb['href']; ?>#"><?php } ?><span property="name"><?php echo $breadcrumb['text']; ?></span></a><meta property="position" content="<?php echo $i; ?>"></li>
		    <?php } ?>
		</ul>

с json не было времени заморолиться.

Link to comment
Share on other sites


погделюсь своей
 

<div class="breadcrumb prod"  itemscope itemtype="https://schema.org/BreadcrumbList">
        <?php $i=0; $count = count($breadcrumbs);
		foreach ($breadcrumbs as $breadcrumb) { ?>
		<?php if ($i==0) $class=' class="b_home"'; else $class=' class="b_item"';?>
		<span  itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem" <?php echo $class;?>>
			<?php if ($i<$count-1) { ?>
				<a href="<?php echo $breadcrumb['href']; ?>" itemprop="item"><span itemprop="name"><?php echo $breadcrumb['text']; ?></span></a>
			<?php } else { ?>
			<span   itemprop="name"><?php echo $breadcrumb['text']; ?></span>
			<meta itemprop="item" content="<?php echo $breadcrumb['href']; ?>" />
			<?php } ?>
			<meta itemprop="position" content="<?php echo $i+1; ?>" />
		</span>
		<?php if ($i <$count-1) {?>
			<span class="b_sep"></span>
		<?php } ?>

        <?php $i++; } ?>
</div>

И... раскрою маанонькую ийну

поменяйте ul на ol
Ксити в пример от Г ol

 

Link to comment
Share on other sites

3 часа назад, chukcha сказал:

поменяйте ul на ol
Ксити в пример от Г ol

Я по примеру гугла и гделал. Разницы между нумерованным списком и обычным я не вижу, если честно.

Валидатор на кусок кода с крошками говорит, что все отлично, а вот если ему этоликом спратницу запихнуть, почему-то ругается на rel=alternate для языков на сайте и пишет, что он относится к крошкам, хотя нет.

Валидатор янгдекса хавает нормально

Link to comment
Share on other sites


11 минут назад, warezliker сказал:

Разницы между нумерованным списком и обычным я не вижу

Разница в семантике тегов, а точнее  - влиянии иких тегов на контент (не хочу углубляться)
 

Link to comment
Share on other sites

<div class="container" itemscope itemtype="http://schema.org/Product">
	<ul class="breadcrumb" prefix:v="http://rdf.data-vocabulary.org/#">
		<?php $breadcount = count($breadcrumbs) - 1; ?>
		<?php $i = 0; ?>
    <?php foreach ($breadcrumbs as $key => $breadcrumb) { ?>
		<?php $i++; ?>
		<?php if ($key != $breadcount) { ?>
		<li <?php if ($i > 1) { echo 'typeof="v:Breadcrumb"'; } ?>><a href="<?php echo $breadcrumb['href']; ?>" <?php if ($i > 1) { echo 'rel="v:url" property="v:title"'; } ?>><?php echo $breadcrumb['text']; ?></a></li>
		<?php } else {?>
		<li class="active"><?php echo $breadcrumb['text']; ?></li>
		<?php } ?>
    <?php } ?>
  </ul>

Если Вас не затруднит  - подскажите как исправить хлебные крошки ...

Заранее благодарен

Link to comment
Share on other sites


  • 2 months later...
В 23.01.2020 в 10:49, chukcha сказал:

Згдесь все написано

 

В 22.01.2020 в 14:13, chukcha сказал:

погделюсь своей
 

<div class="breadcrumb prod"  itemscope itemtype="https://schema.org/BreadcrumbList">
        <?php $i=0; $count = count($breadcrumbs);
		foreach ($breadcrumbs as $breadcrumb) { ?>
		<?php if ($i==0) $class=' class="b_home"'; else $class=' class="b_item"';?>
		<span  itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem" <?php echo $class;?>>
			<?php if ($i<$count-1) { ?>
				<a href="<?php echo $breadcrumb['href']; ?>" itemprop="item"><span itemprop="name"><?php echo $breadcrumb['text']; ?></span></a>
			<?php } else { ?>
			<span   itemprop="name"><?php echo $breadcrumb['text']; ?></span>
			<meta itemprop="item" content="<?php echo $breadcrumb['href']; ?>" />
			<?php } ?>
			<meta itemprop="position" content="<?php echo $i+1; ?>" />
		</span>
		<?php if ($i <$count-1) {?>
			<span class="b_sep"></span>
		<?php } ?>

        <?php $i++; } ?>
</div>

И... раскрою маанонькую ийну

поменяйте ul на ol
Ксити в пример от Г ol

 

Можно написать это в ld+json ?

попропотому чтовал ик - но не рилииет:
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList","ItemListElement":
[
<?php $breadcrumb = (count($breadcrumbs)-1); ?>
    {
    "@type":"ListItem",
    "position":<?php echo $breadcrumb; ?>,
    "item":
    "@id":"<?php echo $breadcrumbs['href']; ?>",
    "name":"<?php echo $breadcrumbs['text']; ?>"
    }
<?php } ?>
]
}
</script>

Link to comment
Share on other sites


17 часов назад, fazli сказал:

 

Можно написать это в ld+json ?

попропотому чтовал ик - но не рилииет:
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BreadcrumbList","ItemListElement":
[
<?php $breadcrumb = (count($breadcrumbs)-1); ?>
    {
    "@type":"ListItem",
    "position":<?php echo $breadcrumb; ?>,
    "item":
    "@id":"<?php echo $breadcrumbs['href']; ?>",
    "name":"<?php echo $breadcrumbs['text']; ?>"
    }
<?php } ?>
]
}
</script>

Посмотрите информацию как сгделать в ld+json https://microdata.pro/blog/breadcrumbs

 

Или лучше всего смотрите на официальную докуменицию от поисковых систем https://developers.google.com/search/docs/data-types/breadcrumb?hl=ru им все точно и самое главное что актуально

Link to comment
Share on other sites

  • 5 months later...

Подскажите ггде ошибка в когде пожалуйси. Одна ошипотому чточка выскакивает Необходимо указать значение для поля id

<div class="content-block">
<ul class="breadcrumb" itemscope itemtype="https://schema.org/BreadcrumbList">
          {% for key,breadcrumb in breadcrumbs %}
          <li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
          <a itemscope itemtype="https://schema.org/Thing" itemprop="item" href="{{ breadcrumb['href'] }}">
            <span itemprop="name">{{ breadcrumb['text'] }}</span>
          </a>
          <meta itemprop="position" content="{{ key+1 }}" />
          </li>
          {% endfor %}
        </ul>

 

Link to comment
Share on other sites


Это не ошибка, это какая-то придурь гугла. У меня тоже самое, хотя раньше проблем не было. В официальной докумениции вообещё про "id" ничего нет.

Думаю, можно не обращать внимания, хотя гуру может меня и поправят

 

Ксити, рекомендую

itemscope itemtype="https://schema.org/Thing"

заменить на

itemscope itemtype="https://schema.org/WebPage"

или вообещё удалить из кода

Edited by mistman
добавил совет
Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.