Если стоит задача создать свой, отдельный блок с тем же дизайном что и у cross/upselling-а, то для этого надо скопировать часть кода из crossselling, заменить массив и заголовок.
Для темы Default3 это будет выглядеть вот так:
было
<!-- RELATED PRODUCTS --> {$upselling = $product->upSelling(12)} {$crossselling = $product->crossSelling(12)} {if $upselling || $crossselling} <div class="product-info"> {if $crossselling} <section class="related"> <h3>{sprintf('[`Customers who bought %s also bought`]', $product.name|escape)}</h3> {include file="list-thumbs-mini.html" products=$crossselling ulclass="related-bxslider"} </section> {/if} {if $upselling} <section class="related"> <h3> [`See also`] {$compare_ids = array_merge(array($product.id), array_keys($upselling))} <input type="button" onClick="javascript:window.location='{$wa->getUrl('/frontend/compare', ['id' => implode(',', $compare_ids)])}';" value="[`Compare all`]" class="gray" /> </h3> {include file="list-thumbs-mini.html" products=$upselling ulclass="related-bxslider"} </section> {/if} </div> {/if}
стало
<!-- RELATED PRODUCTS --> {$upselling = $product->upSelling(12)} {$crossselling = $product->crossSelling(12)} {$mycollection = shopStek37Plugin::get($product.id, 12)} {if $upselling || $crossselling || $mycollection} <div class="product-info"> {if $crossselling} <section class="related"> <h3>{sprintf('[`Customers who bought %s also bought`]', $product.name|escape)}</h3> {include file="list-thumbs-mini.html" products=$crossselling ulclass="related-bxslider"} </section> {/if} {if $upselling} <section class="related"> <h3> [`See also`] {$compare_ids = array_merge(array($product.id), array_keys($upselling))} <input type="button" onClick="javascript:window.location='{$wa->getUrl('/frontend/compare', ['id' => implode(',', $compare_ids)])}';" value="[`Compare all`]" class="gray" /> </h3> {include file="list-thumbs-mini.html" products=$upselling ulclass="related-bxslider"} </section> {/if} {if $mycollection} <section class="related"> <h3>Это моя дополнительная коллекция </h3> {include file="list-thumbs-mini.html" products=$mycollection ulclass="related-bxslider"} </section> {/if} </div> {/if}
что сделано:
- получен массив коллекции
{$mycollection = shopStek37Plugin::get($product.id, 12)}
- добавлено условие для показа блока Related-товаров при наличии своей коллекции
{if $upselling || $crossselling || $mycollection}
- скопирован блок crossseling-а и в нём изменены массив и заголовок
{if $mycollection} <section class="related"> <h3>Это моя дополнительная коллекция</h3> {include file="list-thumbs-mini.html" products=$mycollection ulclass="related-bxslider"} </section> {/if}
В большинстве тем дизайна этот блок сделан практически идентично с небольшими различиями в используемых html-элементах, названиях классов html-элементов и используемом шаблоне списков товаров(list-thumbs-mini.html/list-thumbs.html/products-list.html и пр.).
0 комментариев