Автор Тема: Помогите разобраться с breadcrumb  (Прочитано 736 раз)

23 Февраль 2020, 15:43:56
Ответ #15
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
https://prestashop-forum.ru/index.php/topic,10969.msg68206.html#msg68206
Вы тему смотрели? Там шаблон /ваш_сайт/themes/ваша_тема/breadcrumb.tpl видели?
Сделайте себе такой и пройдете проверку в google.
23 Февраль 2020, 21:16:26
Ответ #16
  • Фрилансер
  • *
  • Сообщений: 142
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
https://prestashop-forum.ru/index.php/topic,10969.msg68206.html#msg68206
Вы тему смотрели? Там шаблон /ваш_сайт/themes/ваша_тема/breadcrumb.tpl видели?
Сделайте себе такой и пройдете проверку в google.
А я по вашему о чем пишу??
Сделал так как в этой теме не работает!
Выше приложил код который работает но есть ошибка! Прошу помочь разобраться!
25 Февраль 2020, 19:44:04
Ответ #17
  • Фрилансер
  • *
  • Сообщений: 142
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
<!-- Breadcrumb -->
{if isset($smarty.capture.path)}{assign var='path' value=$smarty.capture.path}{/if}
{if !empty($path)}
{$matchCount = preg_match_all('/<a.+?href="(.+?)"[^>]*>([^<]*)<\/a>/', $path, $matches)}
{$breadcrumbs = []}
{for $i=0; $i < $matchCount; $i++}
{$breadcrumbs[] = ['url' => $matches[1][$i], 'title' => $matches[2][$i]]}
{/for}
{$match = preg_match('/>([^<]+)(?:<\/\\w+>s*)?$/', $path, $matches)}
{if !empty($matches[1])}
{$breadcrumbs[] = ['url' => '', 'title' => $matches[1]]}
{elseif !$match && !$matchCount}
{$breadcrumbs[] = ['url' => '', 'title' => $path]}
{/if}
{/if}
<div class="clearfix">
<ol class="breadcrumb" itemscope itemtype="http://schema.org/BreadcrumbList">
<li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
<a class="home" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl}{else}{$base_dir}{/if}" title="{l s='Return to Home'}" itemprop="item">
<i class="fa fa-home"></i>
</a>
<meta itemprop="name" content="{l s='Home'}" />
<meta itemprop="position" content="1" />
</li>
{if !empty($breadcrumbs)}
{foreach from=$breadcrumbs item=breadcrumb name=crumbs}
<li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
{if !empty($breadcrumb.url)}
<a href="{$breadcrumb.url}" itemprop="item" title="{$breadcrumb.title}">
<span itemprop="name">{$breadcrumb.title}</span>
</a>
{else}
<span itemprop="name">{$breadcrumb.title}</span>
{/if}
<meta itemprop="position" content="{($smarty.foreach.crumbs.iteration|intval + 1)}" />
</li>
{/foreach}
{/if}
</ol>
</div>
{if isset($smarty.get.search_query) && isset($smarty.get.results) && $smarty.get.results > 1 && isset($smarty.server.HTTP_REFERER)}
<div class="pull-right">
<strong>
{capture}{if isset($smarty.get.HTTP_REFERER) && $smarty.get.HTTP_REFERER}{$smarty.get.HTTP_REFERER}{elseif isset($smarty.server.HTTP_REFERER) && $smarty.server.HTTP_REFERER}{$smarty.server.HTTP_REFERER}{/if}{/capture}
<a href="{$smarty.capture.default|escape:'html':'UTF-8'|secureReferrer|regex_replace:'/[\?|&]content_only=1/':''}" name="back">
<i class="icon-chevron-left left"></i> {l s='Back to Search results for "%s" (%d other results)' sprintf=[$smarty.get.search_query,$smarty.get.results]}
</a>
</strong>
</div>
{/if}
<!-- /Breadcrumb -->
Нашел вот такой пример, все работает кроме одного гугл выбивает ошибку
item     Необходимо указать значение для поля item.
В чем проблема, кто-то может подсказать)?

Никто не поможет?
26 Февраль 2020, 11:46:19
Ответ #18
  • Ветеран
  • *****
  • Сообщений: 1808
  • Репутация: +49/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Удалите itemprop="item" из тега <a>
26 Февраль 2020, 17:03:03
Ответ #19
  • Фрилансер
  • *
  • Сообщений: 142
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Удалите itemprop="item" из тега <a>
Удалил в двух местах, больше нету.
Ошибок стало две, тоже самое "Необходимо указать значение для поля item."
Я скриншот ошибки приложил.
27 Февраль 2020, 11:46:50
Ответ #20
  • Ветеран
  • *****
  • Сообщений: 1808
  • Репутация: +49/-1
  • Сообщество PrestaShop
    • Просмотр профиля
У вас где-то ошибки в коде. Часть тегов красным отмечено на скрине. Так бывает когда тег не закрыт или кавычки лишнии.
Проверьте код страницы полностью. Когда найдете и исправите ошибки добавьте обратно item и position.
<a itemprop="item" href="..."><span itemprop="name">Название</span></a>
<meta itemprop="position" content="..." />
27 Февраль 2020, 14:43:44
Ответ #21
  • Ветеран
  • *****
  • Сообщений: 22125
  • Репутация: +25303/-1
  • Prestashop - просто и эффективно
    • Просмотр профиля
<li itemprop="itemListElement" itemscope="" itemtype="http://schema.org/ListItem">
<a href="https://test.dom-optiki.ua/catalog/9-solncezashitnye-ochki" title="Солнцезащитные очки">
                <meta itemprop=" title=" Солнцезащитные="" очки"="">
<span itemprop="name">Солнцезащитные очки</span>
</a>
<meta itemprop="position" content="2">
</li>
Вот тут ошибка. Ищите почему у вас такой код добавляется
<meta itemprop=" title=" Солнцезащитные="" очки"="">
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
28 Февраль 2020, 15:55:20
Ответ #22
  • Фрилансер
  • *
  • Сообщений: 142
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Извините что долго морочил голову, нашел ошибку когда показали)!
Всё заработало!
Всем спасибо за помощь! :)