Jump to content

вывод атрибута товаров


Recommended Posts

madvolkov

Подскажите пожалуйста как в шаблоне товара вывести его атрибуты ? 

И как на страницах списка товаров вывести у товара 1 определенный атрибут ? 

и не понятно как удалять вообще атрибуты в админке  например ?

Link to post
Share on other sites
madvolkov

на старнице товара так вот вывелось 

{if $MODULE_product_options !=''}
<div class="nostrong"> {$MODULE_product_options}</div>
{/if}

а как вот на странице категории у товаров вывести определенный 1 атрибут ? 

Link to post
Share on other sites
support
48 минут назад, madvolkov сказал:

на старнице товара так вот вывелось 


{if $MODULE_product_options !=''}
<div class="nostrong"> {$MODULE_product_options}</div>
{/if}

а как вот на странице категории у товаров вывести определенный 1 атрибут ? 

Вывод атрибутов внутри категории, в списке товара, включается в Адимнке - Настройки - Вывод товара - Показывать атрибуты.

Но выводятся все, что есть.

 

Что б выводить какой-то конкретный, это надо выводить на карточке товара /templates/шаблон/module/product_optionts/multi_options.html

 

Кокнретный элемент массива можно выводить так:

{$item_data.0.TEXT} - что б выводить 0 элемент

{$item_data.1.TEXT} - первые элемент и т.д.

 

 

Link to post
Share on other sites
madvolkov

у меня нет такой настройки 

у меня так:

Настройки - Вывод товара

Показывать фильтр Категория/Производители (0=не показывать; 1=показывать) help.jpg
Показывать товары подкатегорий в родительской категории help.jpg

 

{$item_data.0.TEXT} а из какого массива выводить то ? какой массив отвечает за вывод этих свойств на странице списка товаров ? 

Link to post
Share on other sites
madvolkov

такой вот шаблон вывода списка товаров...какой код для вывода атрибутов ? 

{config_load file="$language/lang_$language.conf" section="index"}
<ul class="categories-list">
</ul> 
{if $categories_list}
 <div class="page">   
 	<div class="pageItem">     
 		<ul class="categories-list">      
 			{foreach name=aussen item=category_data from=$categories_list}  	   
 			<li><a href="index.php?cat={$category_data.CATEGORIES_ID}">
 				{$category_data.CATEGORIES_NAME}</a></li>      
 			{/foreach}     
 		</ul>  
 	</div> 
{/if} 
</div>
<h1>
{if $CATEGORIES_HEADING_TITLE}
  {$CATEGORIES_HEADING_TITLE}
{else}
  {$CATEGORIES_NAME}
{/if}
</h1>


{if $CATEGORIES_HEADING_TITLE or $CATEGORIES_DESCRIPTION}
<div class="page">
<div class="pageItem">

{if !$smarty.get.page}
{if $CATEGORIES_IMAGE}
<p>
<img src="{$CATEGORIES_IMAGE}" alt="{$CATEGORIES_NAME}" />
</p>
{/if}
<div class="clear"></div>
</div>

</div>
{/if}
{/if}

{if !$smarty.get.page}
{if $MANUFACTURERS_DESCRIPTION}
<div class="page">
<div class="pageItem">
<p>
{$MANUFACTURERS_DESCRIPTION}
</p>
<div class="clear"></div>
</div>

</div>
{/if}
{/if}
{if $smarty.get.cat=="10"}
<br>
<br>
<ul class="thumbnails">
	<li style="margin-left:0">
<div class="thumbnail2" style="width:230px; height: 200px !important; text-align: center">
	<h4 ><a href="/obruchalnye-kolca.html">ОБРУЧАЛЬНЫЕ КОЛЬЦА</a></h4>
	<a href="/obruchalnye-kolca.html"><img src="images/product_images/thumbnail_images/30560_1.jpg"  width="130" alt="ОБРУЧАЛЬНЫЕ КОЛЬЦА НА ЗАКАЗ"></a>
</div>
	</li>
	<li style="margin-left: 15px">
<div class="thumbnail2" style="width:230px; height: 200px !important; text-align: center">
	<h4 ><a href="/kolca-s-brilliantami.html">ЗОЛОТЫЕ КОЛЬЦА</a></h4>
	<a href="/kolca-s-brilliantami.html"><img src="images/product_images/thumbnail_images/18050_1.jpg" width="170" alt="КОЛЬЦА НА ЗАКАЗ"></a>
</div>
	</li>
	<li style="margin-left: 15px">
<div class="thumbnail2" style="width:230px; height: 200px !important; text-align: center">
	<h4><a href="/suveniry.html">ЮВЕЛИРНЫЕ ПОДАРКИ</a></h4>
	<a href="/suveniry.html"><img src="images/product_images/thumbnail_images/18672_0.jpg" width="150"  alt="ЮВЕЛИРНЫЕ ПОДАРКИ"></a>
</div>
	</li>
	<li style="margin-left: 0px">
		<div class="thumbnail2" style="width:230px; text-align: center">
			<h4><a href="/sergi.html">СЕРЬГИ НА ЗАКАЗ</a></h4>
			<a href="/sergi.html"><img src="images/product_images/thumbnail_images/20085_1.jpg" alt="СЕРЬГИ НА ЗАКАЗ"></a>
		</div>
	</li>
	<li style="margin-left: 15px">
		<div class="thumbnail2" style="width:230px; text-align: center">
			<h4><a href="/kulony.html">КУЛОНЫ</a></h4>
			<a href="/kulony.html"><img src="images/product_images/thumbnail_images/18674_0.jpg" alt="КУЛОНЫ НА ЗАКАЗ"></a>
		</div>
	</li>
	<li style="margin-left: 15px">
		<div class="thumbnail2" style="width:230px; text-align: center">
			<h4><a href="/cepochki.html">ЦЕПОЧКИ</a></h4>
			<a href="/cepochki.html"><img src="images/product_images/thumbnail_images/18699_0.jpg" alt="ЦЕПОЧКИ НА ЗАКАЗ"></a>
		</div>
	</li>
</ul>
{/if}
{if $CATEGORIES_NAME}
<div class="page">
<div class="pageItem">
{$FILTERS}
{if $MANUFACTURER_SORT}
<p>
{$MANUFACTURER_SORT}
</p>
{/if}
<p><big>
{#text_sort#}
<a href="{$LINK_sort_name_asc}">{#text_sort_name_asc#}</a>  
<a href="{$LINK_sort_name_desc}">{#text_sort_name_desc#}</a> | 
<a href="{$LINK_sort_price_asc}">{#text_sort_price_asc#}</a>  
<a href="{$LINK_sort_price_desc}">{#text_sort_price_desc#}</a> | 
<!--a href="{$LINK_sort_ordered_asc}">{#text_sort_ordered_asc#}</a>  
<a href="{$LINK_sort_ordered_desc}">{#text_sort_ordered_desc#}</a |-->
<a href="{$LINK_sort_id_asc}">{#text_sort_id_asc#}</a>  
<a href="{$LINK_sort_id_desc}">{#text_sort_id_desc#}</a><!-- | 
a href="{$LINK_sort_quantity_asc}">{#text_sort_quantity_asc#}</a>  
<a href="{$LINK_sort_quantity_desc}">{#text_sort_quantity_desc#}</a--> 
</big>
</p>
{if $PRODUCTS_COUNT >= $smarty.const.MAX_DISPLAY_SEARCH_RESULTS}
<!--p>
{#text_products_per_page#}

{if $PRODUCTS_COUNT > 10}
<a href="{$LINK_PAGE}10">10</a> 
{/if}

{if $PRODUCTS_COUNT > 20}
<a href="{$LINK_PAGE}20">20</a> 
{/if}

{if $PRODUCTS_COUNT > 50}
<a href="{$LINK_PAGE}50">50</a> 
{/if}

{if $PRODUCTS_COUNT > 100}
<a href="{$LINK_PAGE}100">100</a>
{/if} 
</p>
{/if}
<div class="clear"></div-->
</div>

</div>
{/if}

{if $CATEGORIES_NAME}
<form action="{$smarty.const.FILENAME_COMPARISON}">
{/if}


<!-- start: products listing -->
<div class="row-fluid shop-products">
	<ul itemtype="https://schema.org/ItemList" itemscope class="thumbnails">
		{foreach name=aussen item=module_data from=$module_content}
		<li itemtype="https://schema.org/Product" itemprop="itemListElement" itemscope class="item span4{if $smarty.foreach.aussen.index % 3 == 0} first{/if}">
			<div class="thumbnail text-center">
				{if $module_data.PRODUCTS_SPECIAL > 0}<div class="description"><span class="discount">-{$module_data.PRODUCTS_SPECIAL|round}%</span></div>{/if}
				<a href="{$module_data.PRODUCTS_LINK}" class="image cat"><img itemprop="image" src="{$module_data.PRODUCTS_IMAGE}" alt="{$module_data.PRODUCTS_NAME}" /><span class="frame-overlay"></span><span itemprop="offers" itemscope itemtype="https://schema.org/Offer" class="price"><span itemprop="price">{$module_data.PRODUCTS_PRICE}</span></span>{if $module_data.PRODUCTS_LABEL}{$module_data.PRODUCTS_LABEL}{/if}</a>
			<div class="inner notop nobottom text-center">
				<h4 class="title"><a itemprop="name" href="{$module_data.PRODUCTS_LINK}">{$module_data.PRODUCTS_NAME}</a></h4>
				<div itemprop="description" class="description">{$module_data.PRODUCTS_SHORT_DESCRIPTION|strip_tags|vam_truncate:30:"...":true}</div>
				{if $module_data.EXTRA_FIELDS}
				<div class="description">
				{foreach item=extra_fields from=$module_data.EXTRA_FIELDS}
				{$extra_fields.NAME}: {$extra_fields.VALUE}<br />
				{/foreach}
				</div>
				{/if}
{if $module_data.REVIEWS_TOTAL > 0}<div class="description"><span class="rating">{$module_data.REVIEWS_STAR_RATING}</span> <span class="reviews">{$smarty.const.TEXT_TOTAL_REVIEWS}: {$module_data.REVIEWS_TOTAL}</span></div>{/if}

				{if $CATEGORIES_NAME}<div class="description"></div>{/if}
			</div>
			</div>
		</li>
		{/foreach}
	</ul>
</div>  
<!-- end: products listing -->  

<div class="clear"></div>

{if $CATEGORIES_NAME}
<input type="hidden" name="cat" value="{$smarty.get.cat}" />

</form>
{/if}

<div class="navigation">
<big><big><span class="right">{$NAVIGATION}</span>{$NAVIGATION_PAGES}</big></big>
</div>
<div class="clear"></div>


{if !$smarty.get.page}
{if $CATEGORIES_DESCRIPTION}
<br />
<p>
{$CATEGORIES_DESCRIPTION}
</p>
{/if}
{/if}

 

делаю так вот  :

просто страница не грузится а пустой становится 

 

 

хотя код для вывода атрибутов в 

Файл includes\modules\product_listing.php присутствует 

Link to post
Share on other sites
support
3 часа назад, madvolkov сказал:

у меня нет такой настройки 

 

Значит старая версия.

Создавайте в тех. поддержке тикет - https://forum.vamshop.ru/support/

Напишу код.

По идее, достаточно:

				{assign var=options value=$module_data.attrib}
				{include file="{$smarty.const.DIR_FS_CATALOG}{$tpl_path}module/product_options/multi_options.html"}

 

Link to post
Share on other sites
  • 4 months later...

Здравствуйте, помогите пожалуйста, вот если ценна товара равна 0 рублей , то в листинге товара ее не отображает, так же как и кнопку "купить" Пока не зайдешь в карточку товара. А если ценна товара создается из атрибутов? Как вернуть  кнопку купить в листинг, и чтобы сумма заказа менялась  в зависимости от выбранного атрибута?

Link to post
Share on other sites
3 часа назад, ggg888 сказал:

Здравствуйте, помогите пожалуйста, вот если ценна товара равна 0 рублей , то в листинге товара ее не отображает, так же как и кнопку "купить" Пока не зайдешь в карточку товара. А если ценна товара создается из атрибутов? Как вернуть  кнопку купить в листинг, и чтобы сумма заказа менялась  в зависимости от выбранного атрибута?

Здравствуйте!

что б при выборе атрибута цена сразу менялась в карточке товара, вот есть ответ в FAQ - 

 

Что б кнопки были при 0 стоимости.

Это надо во всех шаблонах плиток в /templates/vamshop4/components/product-card

Удалять условие:

{if $module_data.PRODUCTS_PRICE_PLAIN > 0}
..
{/if}

Например в файле /templates/vamshop4/components/product-card/product-card-buy-button.html два раза встрачается, удалять два раза.

Тогда и цена 0 будет и кнопка купить будет.

Можно и атрибуты товара прям в списке товара выводить.

В Админке - Настройки - Вывод товара включите опцию Показывать атрибуты товара.

Тогда будет вот так в списке товара выводиться.

Смотрите скрин.

т.е. прям в списке товара будет возможность выбрать атрибут, количество и добавить сразу в корзину.

Ну иможно выводить не + или - к цене товара, а выводить полную стоимость уже с атрибутов.

Надо метку в шаблоне атрибутов поменять в /templates/vamshop4/module/product_options/multi_options.html  поменяв PRICE на FULL_PRICE

Тогда будет выводиться цена+цена атирибута, а не просто цена атрибута.

 

Screenshot from 2020-10-23 17-34-28.png

Link to post
Share on other sites

Если удаляю условия 

{if $module_data.PRODUCTS_PRICE_PLAIN > 0}
..
{/if}

сайт летит, просто белый экран

Link to post
Share on other sites
2 минуты назад, ggg888 сказал:

Если удаляю условия 


{if $module_data.PRODUCTS_PRICE_PLAIN > 0}
..
{/if}

сайт летит, просто белый экран

Чудес не бывает ведь.

Значит что-то лишнее удаляете.

Link to post
Share on other sites

Чудеса бывают, удалил условия во всех product-car, не заходит в карточку товара, сделал бекап данных, все заработало. Кэш, до этого чистил несколько раз, чудеса. Вот только ценна не меняется от выбранных атрибутов, у меня их несколько, может в этом причина? https://54вкуса.рф/wok.html

Link to post
Share on other sites
55 минут назад, ggg888 сказал:

Чудеса бывают, удалил условия во всех product-car, не заходит в карточку товара, сделал бекап данных, все заработало. Кэш, до этого чистил несколько раз, чудеса. Вот только ценна не меняется от выбранных атрибутов, у меня их несколько, может в этом причина? https://54вкуса.рф/wok.html

Так внутри категории товары при выборе сразу цена и не будет меняться.

Это надо JS код Вам писать, который при выборе сразу будет выводить стоимость.

Link to post
Share on other sites
4 часа назад, support сказал:

Так внутри категории товары при выборе сразу цена и не будет меняться.

Это надо JS код Вам писать, который при выборе сразу будет выводить стоимость.

А это статья не об этом!?

Link to post
Share on other sites
2 часа назад, ggg888 сказал:

А это статья не об этом!?

Об этом.

Но это для карточки товара ведь код, а не для списка тоара внутри категории.

Link to post
Share on other sites
  • 3 weeks later...

Здравствуйте, случилась вот такая проблема, у меня в  названии атрибута есть цифра, и при выборе цифра из названия отображается в цене, подскажите как можно сделать чтобы выбиралась только цена?

2020-11-12_12-19-01.png

Link to post
Share on other sites
16 минут назад, ggg888 сказал:

Здравствуйте, случилась вот такая проблема, у меня в  названии атрибута есть цифра, и при выборе цифра из названия отображается в цене, подскажите как можно сделать чтобы выбиралась только цена?

 

В FAQ - 

 

Прочитайте первую часть ответа.

Я ж там написал 2 варианта как можно сделать.

Вот у Вас сделано по второму варианту, поэтому и такая проблема.

Сделайте по первому варианту с атрибуитом price в html коде.

Я специально как раз первый вариант написал, для таких случаев как у Вас.

Он более универсальный и таких проблема с ним быть не должно.

Link to post
Share on other sites

Да ставил по первому, также было, закэшировалось походу, но вроде два раза сбрасывал. 

Link to post
Share on other sites
Только что, ggg888 сказал:

Да ставил по первому, также было, закэшировалось походу, но вроде два раза сбрасывал. 

Сделайте по первому и пришлите ссылку, попробую посмотреть как выглядит.

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

т.е. открываю консоль f12

Обновляю страницу или захожу на страницу, закрываю консоль и смотрю.

Link to post
Share on other sites
37 минут назад, ggg888 сказал:

https://54вкуса.рф/kartophel-phri-.html при этом варианте  у меня не работает

А у меня работает.

Вот зашёл просто на страницу:

Screenshot from 2020-11-12 10-26-06.png

Вот выбрал первый атрибут:

Screenshot from 2020-11-12 10-26-10.png

Цена подставилась.

 

Может у Вас всё-таки кэш какой-то.

Откройте консоль f12

В опции Settings,т.е. шестёркнка справа.

Посмотрите опцию Disable Cache (White DevTools in open)

Это опция должна быть включена.

P.S. Всё-таки неправильно Вы атрибуты используете.

Надо обязательно у товара указывать цену, а атрибуты - это как добавка к стандартной цене.

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

Получается, что у Вас все товары бесплатные с 0 ценой.

Это и покупателей будет вводить в заблуждение.

Link to post
Share on other sites
1 минуту назад, ggg888 сказал:

Странно, не в яндекс не хроме, у меня не работает

 

В инкогнито вкладке попробуйте.

В меню выбериет Incognito tab

+ попробуйте почистить кэш в консоли.

Раздел Application - Cache Storage - js-cache почистите.

+ в Application - Service Workers нажмите Unregister.

 

Link to post
Share on other sites
21 минуту назад, ggg888 сказал:

нет, не работает, может удалить кэш с хостинга? templates/vamshop4/cache

У меня сейчас тоже перестало работать.

 

 

Link to post
Share on other sites
×
×
  • Create New...