Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Микроразметка хлебных крошек JS (https://javascript.ru/forum/server/83243-mikrorazmetka-khlebnykh-kroshek-js.html)

plaksin.web 26.10.2021 10:32

Сейчас вот так формирует:
<ul class="breadcrumbs" itemscope="" itemtype="http://schema.org/BreadcrumbList">        
        
<li itemprop="itemListElement" itemscope="" itemtype="https://schema.org/ListItem">
<a href="" itemprop="item"><span itemprop="name">Главная</span><meta itemprop="position" content="1"></a>
</li>

    <li><a href="catalog" title="Каталог"><span itemprop="item"><span itemprop="name">Каталог</span></span><meta itemprop="position" content="2"></a></li>
<li><span itemprop="item"><span itemprop="name">Мешки для мусора</span></span><meta itemprop="position" content="3"></li>
</ul>


А нужно так:
<ul class="breadcrumbs" itemscope="" itemtype="http://schema.org/BreadcrumbList">        
        
<li itemprop="itemListElement" itemscope="" itemtype="https://schema.org/ListItem">
<a href="" itemprop="item"><span itemprop="name">Главная</span><meta itemprop="position" content="1"></a>
</li>

    <li itemprop="itemListElement" itemscope="" itemtype="https://schema.org/ListItem">
<a href="catalog" title="Каталог""><span itemprop="item"><span itemprop="name">Каталог</span></span><meta itemprop="position" content="2"></a></li>
<li itemprop="itemListElement" itemscope="" itemtype="https://schema.org/ListItem">
<span itemprop="item"><span itemprop="name">Мешки для мусора</span></span><meta itemprop="position" content="3"></li>
</ul>

рони 26.10.2021 11:23

plaksin.web,
:-?
$(function() {
            $("ul.breadcrumbs > li").attr({itemtype : "https://schema.org/ListItem", itemprop : "itemListElement", itemscope : ""})
        });

рони 26.10.2021 11:37

plaksin.web,
если что-то не так, то читайте внимательно ... структура до скрипта и после кода скрипта.

plaksin.web 26.10.2021 11:45

О да! работает, спасибо, только я тупанул:-?
Надо было это добавить:
<li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">


Попробовал по аналогии добавить:
$(function() {
            $("ul.breadcrumbs > li").attr({itemprop : "itemListElement", itemscope itemtype : "https://schema.org/ListItem"})
        });


Но так, не работает:(

plaksin.web 26.10.2021 11:50

Аааааааааа, все верно, просто порядок изменился. сорри))))))) Спасибо!

plaksin.web 26.10.2021 13:05

Блин, все работает, но валидаторы гугла и яндекса видят только первый <li>, такое ощущение, скрипт добавляет атрибуты, после того как роботы обходят страницу, так как код сформировавшейся страницы они читают без ошибок....
Пробовал вставлять код и в <ahead></ahead> и в начало, и в конец страницы, тоже самое.....

Можно как то сделать, что бы скрипт грузился раньше?

рони 26.10.2021 14:03

plaksin.web,
формируйте страницу как нужно на сервере, роботам влом запускать ваши скрипты.

plaksin.web 26.10.2021 14:19

Страницу формирует CMS наверное... Может это через PHP можно сделать? Ну если это конечно, решит проблему....


Часовой пояс GMT +3, время: 08:40.