Скрыть подробное описание, если оно не заполнено Есть решение

Всем привет! Подскажите, пожалуйста, какую строчку кода вставить в шаблон Продакт.карт? Чтоб при отсутствии описания остались видны вкладки Характеристики и Отзывы. Вкладка Характеристики должна стать в таком случае активной. Иначе она автоматически грузиться не будет, и придётся каждый раз нажимать на кнопку "Характеристики".

Часть родного кода:

<div class="product-header-title">
<h4>{sprintf('[`Buy %s`]',$product.name|escape)}</h4>
</div>
{if $product.summary}
<div class="product-summary">
<p>{$product.summary|truncate:512}</p>
<a href="#product_description">Подробное описание</a>



1 ответ

  • 3
    replicant 5 июня 2020 20:10 # Решение

    Да запросто. Вот уже готовое решение. Стилизацию адаптируйте только. Скрипт тоже можете оставить свой, который в вашей теме, если он вам роднее. В общем случае даже на обертку не смотрите. Смотрите на логику работы с вкладками при отстутствии описания. Вам надо похожую логику у себя прикрутить в нужных местах.

    Пример скрипта.

    $(function(){
    
    $('.tab-menu').click(function(){$('.tab-menu').removeClass('selected');$('.tab-content').parent().hide(200);$(this).addClass('selected');$('#tab'+$(this).attr('value')).show(200)})
    
    })

    Пример кода с вкладками.

    <div class="info-block">
    <ul class="info-block-menu">
        {$_desc = trim($product.description)}
    
        {if $_desc}
        <li class="tab-menu selected" value="1">
            <span>[`Overview`]</span>
        </li>
        {/if}
    
        {if $product.features}
        <li class="tab-menu{if !$_desc} selected{/if}" value="2">
            <span>[`Features`]</span>
        </li>
        {/if}
    
        {if empty($theme_settings.hide_reviews)}
        <li class="tab-menu" value="3">
            <span>[`Reviews`]&nbsp;({$reviews_total_count})</span>
        </li>
    </ul>
    <!-- тут типа контент вкладок пошел -->
    <div class="info-block-content">
        {if $_desc}
        <div id="tab1">
            <div class="tab-head"><h2>[`Overview`]</h2></div>
            <div class="tab-content">
                <div class="description" id="product-description" itemprop="description">{$_desc}</div>
            </div>
        </div>
        {/if}
    
        {if $product.features}
        <div id="tab2"{if $_desc} style="display:none;"{/if}>
            <div class="tab-head"><h2>[`Features`]</h2></div>
            <div class="tab-content">
            ну и дальше пошел вывод хар-к...короче там уже не интересно совсем

Добавить ответ

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