#templates #shopware
#шаблоны #shopware
Вопрос:
Я добавил пользовательские вкладки в Shopware 5, как показано в руководстве, и это сработало довольно хорошо. Но через некоторое время я заметил, что вкладки показывают необычное поведение после выбора варианта и вызывают перезагрузку. После этой перезагрузки содержимое вкладок будет точно таким же, как на вкладке Описания. Я не понимаю, почему это работает до перезагрузки, но тормозит после. Может кто-нибудь объяснить, что я, очевидно, пропустил здесь?
tabs.tpl
{extends file="parent:frontend/detail/tabs.tpl"}
{* Rating tab *}
{block name="frontend_detail_tabs_rating"}
{if $sArticle.application_description}
<a href="#" class="tab--link" title="{s name='DetailTabsCustom'}Custom Tab{/s}" data-tabName="description">{s name='DetailTabsCustom'}{/s}</a>
{/if}
{$smarty.block.parent}
{/block}
{* Description container *}
{block name="frontend_detail_tabs_content_description"}
{$smarty.block.parent}
{if $sArticle.application_description}
<div class="tab--container">
<div class="tab--header">
<a href="#" class="tab--title" title="{s name='DetailTabsCustom'}Custom Tab{/s}">{s name='DetailTabsCustom'}Custom Tab{/s}</a>
</div>
<div class="tab--preview">
{$sArticle.application_description|strip_tags|truncate:100:'...'}<a href="#" class="tab--link" title="{s name="PreviewTextMore"}{/s}">{s name="PreviewTextMore"}{/s}</a>
</div>
<div class="tab--content">
<div class="buttons--off-canvas">
<a href="#" title="{"{s name="OffcanvasCloseMenu" namespace="frontend/detail/description"}{/s}"|escape}" class="close--off-canvas">
<i class="icon--arrow-left"></i>
{s name="OffcanvasCloseMenu" namespace="frontend/detail/description"}{/s}
</a>
</div>
<div class="content--description">
<div class="product--description" itemprop="description">
{$sArticle.application_description}
</div>
</div>
</div>
</div>
{/if}
{/block}
{* Extend *}
{block name="frontend_detail_tabs_description" append}
{if $sArticle.clp_info_tab}
<a class="tab--link" title="{s namespace="frontend/detail" name='ClpTab'}{/s}" href="#">{s namespace="frontend/detail" name='ClpTab'}{/s}</a>
{/if}
{/block}
{block name="frontend_detail_tabs_content_description" append}
{if $sArticle.clp_info}
<div class="tab--container">
<div class="tab--header"><a class="tab--title" title="{s namespace="frontend/detail" name='ClpTab'}{/s}" href="#">{s namespace="frontend/detail" name='ClpTab'}{/s}</a></div>
<div class="tab--preview">{$sArticle.clp_info_tab|strip_tags|truncate:100: '...'}<a href="#" class="tab--link" title="{s name="PreviewTextMore"}{/s}">{s name="PreviewTextMore"}{/s}</a></div>
<div class="tab--content">{include file="frontend/detail/tabs/clp.tpl"}</div>
</div>
{/if}
{/block}
{* Rating content *}
{block name="frontend_detail_tabs_rating_content"}
<div id="tab--product-comment" class="tab--content">
<span class="product--rating-link" rel="nofollow" title="{"{s namespace="frontend/detail/actions" name='DetailLinkReview'}{/s}"|escape}">
{s namespace="frontend/detail/tabs" name="DetailTabsRating"}{/s}:
{include file='frontend/_includes/rating.tpl' points=$sArticle.sVoteAverage.average type="aggregated" count=$sArticle.sVoteAverage.count}
{block name="frontend_detail_tabs_rating_content_inner"}
{include file="frontend/detail/tabs/comment.tpl"}
{/block}
</span>
</div>
{/block}
tabs/clp.tpl
<div class="buttons--off-canvas">
<a class="close--off-canvas" href="#">
<i class="icon--arrow-left"></i>
Zurück
</a>
</div>
<div class="content--description">
<div class="product--description">
{$sArticle.clp_info_tab}
</div>
</div>
Ответ №1:
Я смог найти отчет об ошибке Shopware, в котором говорилось, что вы не можете повторно использовать класс «содержимое —описание«. Если это так, это вызывает именно эту проблему. Так что переименуйте его или дайте ему другой класс, и это сработает.