Настройка хлебных крошек на сайте

Юлия

Сейчас на сайте для вывода хлебных крошек используется такая конструкция:

{if $page.name}

{$pageName=$page.name}

{/if}

{if !$page.name}

{$pageName=$category.name}

{/if}


{if isset($breadcrumbs)}

<div class="breadcrumbs">

<a href="{$wa_app_url}">Главная</a>

{if $breadcrumbs}

{foreach $breadcrumbs as $breadcrumb}

/

<a href="{$breadcrumb.url}">{$breadcrumb.name|escape}</a>

{/foreach}

/ {$pageName}

{else}

/ {$pageName}

{/if}

</div>

{else}

<div class="breadcrumbs">

<a href="{$wa_url}">Главная</a>

{if $breadcrumbs}

{foreach $breadcrumbs as $breadcrumb}

{if $action != 'page'}

» <a href="{$breadcrumb.url}">{$breadcrumb.name|escape}</a>

{else}

» <span class="active">{$breadcrumb.name|escape}</span>

{/if}

{/foreach}

/ {$pageName}

{else}

/ {$pageName}

{/if}

</div>

{/if}


При этом хлебные крошки выводятся на Главной и не выводятся у товаров в полной мере - в цепочке отсутствует названия товара. Подскажите, что нужно изменить в данном коде, чтобы на Главной странице хлебные крошки не выводились, и чтобы в полной мере присутствовали в товарах http://joxi.ru/5mdodbKUljXyr1

9 января 2017
  • обратитесь к программисту! ненадо вам там ничего самим менять!

  • Юлия 10 января 2017 10:05

    Я и обращаюсь здесь за помощью. Геннадий, Вы можете помочь?

  • нет. занят очень!

  • Вот так!


    {if $page.name}
        {$pageName = $page.name}
    {/if}
    
    {if !$page && $category}
        {$pageName = $category.name}
    {/if}
    {if $product}
        {$pageName = $product.name}
    {/if}
    {if isset($breadcrumbs) && !empty($breadcrumbs)}
        <div class="breadcrumbs">
            <a href="{$wa_app_url}">Главная</a>
            {if $breadcrumbs}
                {foreach $breadcrumbs as $breadcrumb}
                / <a href="{$breadcrumb.url}">{$breadcrumb.name|escape}</a>
                {/foreach}
            {/if}
            {if isset($pageName)}
            / {$pageName}
            {/if}
        </div>
    {else}
    <!--<div class="breadcrumbs">
        <a href="{$wa_url}">Главная</a>
        {if $breadcrumbs}
            {foreach $breadcrumbs as $breadcrumb}
                {if $action != 'page'}
                    » <a href="{$breadcrumb.url}">{$breadcrumb.name|escape}</a>
                {else}
                    » <span class="active">{$breadcrumb.name|escape}</span>
                {/if}
            {/foreach}
        {/if}
        {if isset($pageName)}
            / {$pageName}
        {/if}
    </div>-->
    {/if}
  • Юлия 10 января 2017 12:07

    Спасибо! Да в товарах теперь полный путь указан, однако, вы закомментили вывод хлебных крошек на внутренних страницах сайта, а там тоже необходимо, чтобы они отображались, а на Главной нет

  • Юлия 10 января 2017 12:15

    при расскоменчивании на главной выводятся хлебные крошки, а надо, чтобы не выводились...

  • попробуйте так


     {if !empty($breadcrumbs)}
        <a href="{$wa_url}">Главная</a>
        {/if}
  • Юлия 10 января 2017 12:37

    <div class="breadcrumbs">

    {if !empty($breadcrumbs)}

    <a href="{$wa_url}">Главная</a>

    {/if}

    {if $breadcrumbs}

    {foreach $breadcrumbs as $breadcrumb}

    {if $action != 'page'}

    » <a href="{$breadcrumb.url}">{$breadcrumb.name|escape}</a>

    {else}

    » <span class="active">{$breadcrumb.name|escape}</span>

    {/if}

    {/foreach}

    {/if}

    {if isset($pageName)}

    / {$pageName}

    {/if}

    </div>


    так <a href="{$wa_url}">Главная</a> нигде не выводится

  • сайт напишите!

  • Юлия 10 января 2017 12:49

    vmiremonet.ru

  • Вот так?

    {if $page.name}
    {$pageName = $page.name}
    {/if}
    
    {if !$page && $category}
    {$pageName = $category.name}
    {/if}
    {if $product}
    {$pageName = $product.name}
    {/if}
    {if isset($breadcrumbs) && !empty($breadcrumbs)}
    <div class="breadcrumbs">
        <a href="{$wa_app_url}">Главная</a>
        {if $breadcrumbs}
        {foreach $breadcrumbs as $breadcrumb}
        / <a href="{$breadcrumb.url}">{$breadcrumb.name|escape}</a>
        {/foreach}
        {/if}
        {if isset($pageName)}
        / {$pageName}
        {/if}
    </div>
    {else}
        {if isset($pageName)}
            <a href="{$wa_url}">Главная</a>  / {$pageName}
        {/if}
    </div>
    {/if}
  • Юлия 10 января 2017 13:01

    Спасибо, Николай! Так работает все верно

  • devellopah 27 сентября 2017 14:33

    я, конечно, не гуру php, но нельзя ли упростить до такого

    {$slug = $page.name || $category.name || $product.name}
    
    {if !empty($breadcrumbs)}
    <div class="breadcrumbs">
        <a href="{$wa_app_url}">Главная</a>
    
        {foreach $breadcrumbs as $breadcrumb}
        / <a href="{$breadcrumb.url}">{$breadcrumb.name|escape}</a>
        {/foreach}
    
        {if $slug} / {$slug} {/if}
    </div>
    {else}
        {if $slug} <a href="{$wa_url}">Главная</a> / {$slug} {/if}
    </div>
    {/if}


Чтобы добавить комментарий, зарегистрируйтесь или войдите