bsod9145 Опубликовано 5 января, 2017 Жалоба Поделиться Опубликовано 5 января, 2017 (изменено) Здравствуйте, подскажите решение такой проблемы. Есть товар, в карточке товара выводим "С этим товаром покупают", как сделать так чтобы у дополнительных товаров выводился их артикул. Код: {$product->variant->sku} выводит артикул того товара в карточке которого добавляются доп. товары. Изменено 5 января, 2017 пользователем bsod9145 Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 5 января, 2017 Жалоба Поделиться Опубликовано 5 января, 2017 Попробуйте {$related_product->variant->sku} Цитата Ссылка на сообщение Поделиться на другие сайты
bsod9145 Опубликовано 5 января, 2017 Автор Жалоба Поделиться Опубликовано 5 января, 2017 Попробуйте {$related_product->variant->sku} К сожелению, так же выводит тот же артикул, что присвоен товару в карточке. Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 5 января, 2017 Жалоба Поделиться Опубликовано 5 января, 2017 Приведите код, который выводит связанные товары Цитата Ссылка на сообщение Поделиться на другие сайты
bsod9145 Опубликовано 8 января, 2017 Автор Жалоба Поделиться Опубликовано 8 января, 2017 Вот весь код для карточки товара product.tpl {* Страница товара *} {* Канонический адрес страницы *} {$canonical="/products/{$product->url}" scope=parent} <div class="container"> {include file='path.tpl'} <div id="single" class="product clearfix" itemscope itemtype="http://schema.org/Product"> <h1 class="h1" data-product="{$product->id}" itemprop="name">{$product->name|escape}</h1> <div id="gallery"> <div class="image"> {*variant_image*} {if $product->variant->image} <div class="image"> <a itemprop="image" href="{$product->variant->image|resize:800:600:w}" class="zoom" rel="group"><img src="{$product->variant->image|resize:270:270}" alt="{$product->name|escape}" /></a> </div> {elseif $product->image} <a itemprop="image" href="{$product->image->filename|resize:800:600:w}" class="zoom" rel="group"><img src="{$product->image->filename|resize:270:270}" alt="{$product->name|escape}" /></a> {else} <span itemprop="image"><img src="design/{$settings->theme|escape}/images/no_image.png" alt="{$product->name|escape}" /></span> {/if} </div> {if $product->images|count>1} <div class="images"> {* cut удаляет первую фотографию, если нужно начать 2-й - пишем cut:2 и тд *} {foreach $product->images as $i=>$image} <a href="{$image->filename|resize:800:600:w}" {if !$product->variant->image && $i==0}style="display: none;"{else}class="zoom"{/if} rel="group"><img src="{$image->filename|resize:95:95}" alt="{$product->name|escape}" /></a> {/foreach} </div> {/if} {if $product->images|count>5} <span class="all_photos">Все фото</span> {/if} </div> <div id="product_info" class="clearfix"> <div class="stock"> {if $product->variant->sku} <span class="sku">Артикул: <span>{$product->variant->sku}</span></span> {/if} <span class="available"> {if $product->variant->stock > 0} <span class="sklad">Срок поставки 2-4 дня</span> {else} <span class="no_sklad">Отсутствует</span> {/if} </span> </div> {if $product->variants|count > 0} <div> <form class="variants" action="/cart"> <div class="variant clearfix"> <div class="price_container" itemprop="offers" itemscope itemtype="http://schema.org/Offer"> <span class="price"><span class="cost" itemprop="price">{$product->variant->price|convert}</span><span class="currency" itemprop="priceCurrency" content="RUB"> {$currency->sign|escape}</span></span> {if $product->variant->compare_price > 0} <span class="compare_price"><span class="old_price">{$product->variant->compare_price|convert}</span> {$currency->sign}</span> {/if} </div> <div class="btn_count"> <div id="product_amount"> <span class="minus">−</span> <input type="text" name="amount" value="1" data-max="{$product->variant->stock}" /> <span class="plus">+</span> </div> <button type="submit" class="button" title="Добавить в корзину" data-result-text="Добавлено">{include file='svg.tpl' svgId='cart'}<span>В корзину</span></button> </div> </div> <div id="info_left"> {if $product->variants|count == 1} <input type="hidden" name="variant" value="{$product->variant->id}" /> {else} {*<div class="select_variant"> <select class="dropdown" name="variant"> {foreach $product->variants as $v} <option value="{$v->id}" {if $product->variant->id==$v->id}selected{/if} data-price="{$v->price|convert}" {if $v->compare_price} data-oldprice="{$v->compare_price|convert}"{/if} data-sku="{$v->sku}">{if $v->name}{$v->name} {/if}</option> {/foreach} </select> </div>*} <div class="variants_block"> {foreach $product->variants as $v} <input id="variant_{$v->id}" name="variant" type="radio" value="{$v->id}" {if $product->variant->id==$v->id}checked{/if} data-price="{$v->price|convert}" {if $v->compare_price} data-oldprice="{$v->compare_price|convert}"{/if} data-sku="{$v->sku}" /> <label class="variant_label" for="variant_{$v->id}">{$v->name} <span style="float: right;">{$v->price|convert} {$currency->sign|escape}</span></label> {/foreach} </div> {/if} {if $brand} <div class="brend"> <span>Бренд: <a href="brands/{$brand->url}">{$brand->name|escape}</a></span> {if $brand->image} <a class="brend_img" href="brands/{$brand->url}"><img src="{$config->brands_images_dir}{$brand->image}" alt="{$brand->name|escape}" /></a> {/if} </div> {/if} <div class="annotation">{$product->annotation}</div> <div class="alert-info"> <h5>Возврат и обмен</h5> <hr> <p>В течение 2 недель с момента покупки.</p> <hr> <p>В случае заводского брака гарантия — 12 месяцев.</p> </div> </div> </form> <div id="info_right" itemprop="description"> <ul class="resp-tabs-list del_pay"> <li><span id="delivery_title">Доставка</span></li> <li><span id="payment_title">Оплата</span></li> </ul> <div class="resp-tabs-container del_pay"> <div class="info_right_content"> <span>Курьерская доставка</span> <span>Самовывоз</span> <span>Транспортной компанией</span> <a href="/dostavka">Подробнее</a> </div> <div class="info_right_content"> <span>Наличными при получении</span> <span>Безналичный расчет</span> <span>Яндекс Деньги</span> <a href="/oplata">Подробнее</a> </div> </div> </div> </div> {else} Нет в наличии {/if} </div> </div> <div id="tabs"> <ul class="resp-tabs-list infotabs"> {if $product->body} <li><span class="t_desc">Описание товара</span></li> {/if} {if $self_products} <li><span class="t_features">Компоненты товара</span></li> {/if} {if $related_products} <li><span class="t_comment">С этим товаром покупают</span></li> {/if} </ul> <div class="resp-tabs-container infotabs"> <!--Описание товара--> {if $product->body} <div>{$product->body}</div> {/if} <!-- В состав товара входит--> {if $self_products} <div id="self_products"> <!-- Список каталога товаров--> <ul class="products"> {foreach $self_products as $self_product} <!-- Товар--> <li class="product"> <div class="inner"> <!-- Фото товара --> {if $self_product->image} <div class="image"> <a href="products/{$self_product->url}" target="_blank"><img src="{$self_product->image->filename|resize:200:200}" alt="{$self_product->name|escape}"/></a> </div> {/if} <!-- Фото товара (The End) --> <div class="product_info"> <!-- Название товара --> <a class="product_name" data-product="{$self_product->id}" href="products/{$self_product->url}" target="_blank">{$self_product->name|escape}</a> <!-- Название товара (The End) --> {if $product->variant->sku} <span class="sku">Артикул: <span data-product="{$product->id}">{$product->variant->sku}</span></span> {/if} {if $self_product->variants|count > 0} <!-- Выбор варианта товара --> <form class="variants" action="/cart"> <div class="price_container"> {if $self_product->variant->compare_price > 0} <span class="compare_price"><span class="old_price">{$self_product->variant->compare_price|convert}</span> {$currency->sign}</span> {/if} <span class="price"> <span class="cost">{$self_product->variant->price|convert}</span> <span class="currency">{$currency->sign|escape}</span> </span> </div> <div class="hover_box"> {if $self_product->variants|count == 1} <input name="variant" type="hidden" value="{$self_product->variant->id}" /> {else} <select class="dropdown" name="variant"> {foreach $self_product->variants as $v} <option value="{$v->id}" {if $self_product->variant->id==$v->id}selected{/if} data-price="{$v->price|convert}"{if $v->compare_price} data-oldprice="{$v->compare_price|convert}"{/if} data-sku="{$v->sku}">{if $v->name}{$v->name} {/if}</option> {/foreach} </select> {/if} <div> <div id="product_amount"> <span class="minus">−</span> <input type="text" name="amount" value="1" data-max="{$product->variant->stock}" /> <span class="plus">+</span> </div> <button class="button" type="submit" data-result-text="Добавлено" title="В корзину">{include file='svg.tpl' svgId='cart'}</button> </div> </div> </form> <!-- Выбор варианта товара (The End) --> {else} Нет в наличии {/if} </div> </div> </li> <!-- Товар (The End)--> {/foreach} </ul> </div> {/if} {* С этим товаром покупают *} {if $related_products} <div id="related_products"> <ul class="products"> {foreach $related_products as $related_product} <li class="product"> <div class="inner"> <div class="image"> {*variant_image*} {if $related_product->variant->image} <a href="products/{$related_product->url}"><img src="{$related_product->variant->image|resize:200:200}" alt="{$related_product->product->name|escape}" /></a> {elseif $related_product->image} <a href="products/{$related_product->url}"><img src="{$related_product->image->filename|resize:200:200}" alt="{$related_product->name|escape}"/></a> {else} <a href="products/{$related_product->url}"><img src="design/{$settings->theme|escape}/images/no_image.png" alt="{$related_product->name|escape}"/></a> {/if} </div> <div class="product_info"> <a class="product_name" data-product="{$related_product->id}" href="products/{$related_product->url}">{$related_product->name|escape}</a> {if $product->variant->sku} <span class="sku">Артикул: <span>{$related_product->variant->sku}</span></span> {/if} {if $related_product->variants|count > 0} <form class="variants" action="/cart"> <div class="price_container"> {if $related_product->variant->compare_price > 0} <span class="compare_price"><span class="old_price">{$related_product->variant->compare_price|convert}</span> {$currency->sign}</span> {/if} <span class="price"> <span class="cost">{$related_product->variant->price|convert}</span> <span class="currency">{$currency->sign|escape}</span> </span> </div> <div class="hover_box"> {if $related_product->variants|count == 1} <input name="variant" type="hidden" value="{$related_product->variant->id}" /> {else} <select class="dropdown" name="variant"> {foreach $related_product->variants as $v} <option value="{$v->id}" {if $related_product->variant->id==$v->id}selected{/if} data-price="{$v->price|convert}"{if $v->compare_price} data-oldprice="{$v->compare_price|convert}"{/if} data-sku="{$v->sku}">{if $v->name}{$v->name} {/if}</option> {/foreach} </select> {/if} <div> <div id="product_amount"> <span class="minus">−</span> <input type="text" name="amount" value="1" data-max="{$product->variant->stock}" /> <span class="plus">+</span> </div> <button class="button" type="submit" data-result-text="Добавлено" title="В корзину">{include file='svg.tpl' svgId='cart'}</button> </div> </div> </form> {else} Нет в наличии {/if} </div> </div> </li> {/foreach} </ul> </div> {/if} <div id="call_bottom"> <form class="form feedback_form" method="post"> <p class="reset-margin-padding callbacklines"></p> <div class="call_group"> <label>Введите имя</label> <input type="text" name="name" value="{$comment_name}" data-format=".+" data-notice="Введите имя" id="nickname_field" value="" class="input-text" style=""/> </div> <div class="call_group"> <label>Введите телефон</label> <input data-format=".+" data-notice="Введите номер телефона" value="" name="phone" maxlength="255" type="text" class="input-text"/> </div> <input class="button_description button" type="submit" name="callback" value="Перезвоните мне"/> </form> </div> </div> {*variant_image*} <script> var variantImagesPreview = new Array(); var variantImages = new Array(); {foreach from=$product->variants item=variant} {if $variant->image} variantImagesPreview[{$variant->id}] = '{$variant->image|resize:300:300}'; variantImages[{$variant->id}] = '{$variant->image|resize:800:600:w}'; {elseif $product->variant->image} variantImagesPreview[{$variant->id}] = '{$product->variant->image|resize:300:300}'; variantImages[{$variant->id}] = '{$product->variant->image|resize:800:600:w}'; {elseif $product->image->filename} variantImagesPreview[{$variant->id}] = '{$product->image->filename|resize:300:300}'; variantImages[{$variant->id}] = '{$product->image->filename|resize:800:600:w}'; {/if} {/foreach} var relatedVariantImagesPreview = new Array(); {foreach from=$related_products item=related_product} {foreach from=$related_product->variants item=variant} {if $variant->image} relatedVariantImagesPreview[{$variant->id}] = '{$variant->image|resize:200:200}'; {elseif $related_product->variant->image} relatedVariantImagesPreview[{$variant->id}] = '{$related_product->variant->image|resize:200:200}'; {elseif $related_product->image->filename} relatedVariantImagesPreview[{$variant->id}] = '{$related_product->image->filename|resize:200:200}'; {/if} {/foreach} {/foreach} </script> {*/variant_image*} {* Увеличитель картинок *} {literal} <script> $(function() { /*variant_image*/ $('input[name=variant]').live('change', function() { if (variantImagesPreview[$(this).val()]) { selectedVariant = $(this); $('div.images a').each(function() { if ($(this).attr('href') == variantImages[selectedVariant.val()]) { $(this).removeClass('zoom'); $(this).hide(); } else if(!$(this).hasClass('zoom')) { $(this).addClass('zoom'); $(this).show(); } }); $('div.product div.image img').attr('src', variantImagesPreview[$(this).val()]); $('div.product div.image a').attr('href', variantImages[$(this).val()]); } }); $('#related_products select[name=variant]').live('change', function() { if (relatedVariantImagesPreview[$(this).children(':selected').val()]) { $(this).parents('li.product').find('a img').attr('src', relatedVariantImagesPreview[$(this).val()]); } }); $('div.product form.variants input[name="variant"]:checked').trigger('change'); $('div.product form.variants select[name="variant"]:checked').trigger('change'); /*/variant_image*/ // Зум картинок $("a.zoom").fancybox({ prevEffect : 'fade', nextEffect : 'fade'}); }); </script> {/literal} {literal} <script> $(function(){ $('#comments_container .button').fancybox(); {/literal} {if $error} {literal} $.fancybox({ 'href': '#comment_form' }); {/literal} {/if} {literal} }); </script> {/literal} Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 8 января, 2017 Жалоба Поделиться Опубликовано 8 января, 2017 Как ни странно в {if $product->variant->sku} тоже надо поменять Цитата Ссылка на сообщение Поделиться на другие сайты
bsod9145 Опубликовано 8 января, 2017 Автор Жалоба Поделиться Опубликовано 8 января, 2017 Написал так {if $related_product->variant->sku} <span class="sku">Артикул: <span>{$related_product->variant->sku}</span></span> {/if} теперь артикул вообще не выводится у связанных товаров скрин - http://prntscr.com/dsxjoz Цитата Ссылка на сообщение Поделиться на другие сайты
bsod9145 Опубликовано 8 января, 2017 Автор Жалоба Поделиться Опубликовано 8 января, 2017 Спасибо огромное, на мысль подтолкнули, дальше додумал сам. Вопрос закрыт. Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 8 января, 2017 Жалоба Поделиться Опубликовано 8 января, 2017 Спасибо огромное, на мысль подтолкнули, дальше додумал сам. Вопрос закрыт. поделись поиском по форуму пользуются и страницы индексируется ПС — кто-нибудь воспользуется Цитата Ссылка на сообщение Поделиться на другие сайты
bsod9145 Опубликовано 8 января, 2017 Автор Жалоба Поделиться Опубликовано 8 января, 2017 поделись поиском по форуму пользуются и страницы индексируется ПС — кто-нибудь воспользуетсяТам ответ в самом коде страницы товара. У меня два блока сопутствующих товаров первый начинается с - <!-- В состав товара входит-->, а второй с {* С этим товаром покупают *}, так вот первый if (если посмотреть внимательно) {if $self_products} это у первого блока, а у второго {if $related_products} т.о. вместо {if $related_product->variant->sku} <span class="sku">Артикул: <span>{$related_product->variant->sku}</span></span> {/if} в первом блоке пишем {if $product->variant->sku} <span class="sku">Артикул: <span>{$self_product->variant->sku}</span></span> {/if} Во втором как и подсказывали написал {if $product->variant->sku} <span class="sku">Артикул: <span>{$related_product->variant->sku}</span></span> {/if} Все заработало Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.