<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум ReadyScript &mdash; Вывести название основной комплектации в карточке товара]]></title>
	<link rel="self" href="http://forum.readyscript.ru/feed/atom/topic/1800/" />
	<updated>2019-06-26T08:18:14Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.readyscript.ru/topic/1800/vyvesti-nazvanie-osnovnoi-komplektatsii-v-kartochke-tovara/</id>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10118/#p10118" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Владимир пишет:</cite><blockquote><p>Хочу вывести в карточке товара одну простую комплектацию с условием:<br />Если простых комплектаций больше одной - вывести стандартно.<br />Или<br />Если простая комплектация одна - вывести ее название.</p></blockquote></div><p>Ну соответственно.</p><div class="codebox"><pre><code>{if !$product-&gt;isOffersUse()}
   {static_call var=offer callback=[&#039;\Catalog\Model\Orm\Offer&#039;, &#039;loadByWhere&#039;] params=[[&#039;product_id&#039;=&gt;$product.id, &#039;sortn =&gt; 0]]}
   {$offer.title}
{else}
   {* Здесь кусок кода из стандартного шаблона product_offers.tpl или просто подключение этого шаблона через include, как и было раньше например в теме по умолчанию *} 
{/if}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Закусило Александр]]></name>
				<uri>http://forum.readyscript.ru/user/20/</uri>
			</author>
			<updated>2019-06-26T08:18:14Z</updated>
			<id>http://forum.readyscript.ru/post/10118/#p10118</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10095/#p10095" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Владимир пишет:</cite><blockquote><p>Ах да, я не написал как реализовал у себя в корзине.<br />В моей теме это шаблон - cartpage_page.tpl</p><p>Также добавил блок с проверкой и выводом:<br /></p><div class="codebox"><pre><code>{if $product-&gt;isOffersUse()}
    {foreach $product.offers.items as $key =&gt; $offer}
        &lt;input id=&quot;offer_{$key}&quot; type=&quot;hidden&quot; name=&quot;hidden_offers&quot; class=&quot;hidden_offers&quot; value=&quot;{$key}&quot; data-info=&#039;{$offer-&gt;getPropertiesJson()}&#039; data-num=&quot;{$offer.num}&quot;/&gt;
        {if $cartitem.offer==$key}
            &lt;input type=&quot;hidden&quot; name=&quot;products[{$index}][offer]&quot; value=&quot;{$key}&quot;/&gt;
        {/if}
    {/foreach}
{/if}

&lt;/div&gt;

{elseif $product-&gt;isOffersUse()}

    &lt;div class=&quot;card-product_offers&quot;&gt;
        &lt;select name=&quot;products[{$index}][offer]&quot; class=&quot;select rs-offer&quot;&gt;
            {foreach $product.offers.items as $key =&gt; $offer}
                &lt;option value=&quot;{$key}&quot; {if $cartitem.offer==$key}selected{/if}&gt;{$offer.title}&lt;/option&gt;
            {/foreach}
        &lt;/select&gt;
    &lt;/div&gt;
    
      {else}
      {foreach $product.offers.items as $key =&gt; $offer}
        &lt;div class=&quot;card-product_offers&quot;&gt;
            &lt;label for=&quot;offer_{$key}&quot;&gt;{$offer.title}&lt;/label&gt;
        &lt;/div&gt;
      {/foreach}
{/if}</code></pre></div><p>Но, все равно жду оценки Александра. Что он скажет на такое решение.</p></blockquote></div><p>Потом. Здесь я показываю как вывел в корзине. И тут Вы тоже говорите что повторяется и лучше реализовать по другому.</p>]]></content>
			<author>
				<name><![CDATA[Владимир]]></name>
				<uri>http://forum.readyscript.ru/user/258/</uri>
			</author>
			<updated>2019-06-20T09:55:55Z</updated>
			<id>http://forum.readyscript.ru/post/10095/#p10095</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10094/#p10094" />
			<content type="html"><![CDATA[<p>Сделал так: <br /></p><div class="codebox"><pre><code>{if $product-&gt;isVirtualMultiOffersUse()}
        {* Сведения по виртуальным многомерным Выберите вариантм *}
        {foreach $product.virtual_multioffers.items as $product_id =&gt; $offer}
            &lt;input value=&quot;{$product_id}&quot; type=&quot;hidden&quot; name=&quot;hidden_multioffers&quot; class=&quot;hidden_offers&quot; id=&quot;offer_{$product_id}&quot; data-url=&#039;{$offer.url}&#039; data-info=&#039;{json_encode($offer.values)}&#039;/&gt;
        {/foreach}

    {else}
        {* Сведения по простым Выберите вариантм, связанным с многомерными для изменения цены и остатка *}
        {foreach $product.offers.items as $key =&gt; $offer}
            {* В data-info подменяем двойную ковычку на специальную конструкцию во избежание проблемы jquery с json *}
            &lt;input value=&quot;{$key}&quot; type=&quot;hidden&quot; name=&quot;hidden_offers&quot; class=&quot;hidden_offers&quot; {if $offer@first}checked{/if} id=&quot;offer_{$key}&quot; data-info=&#039;{str_replace(&#039;&amp;quot;&#039;, &#039;*`*&#039;, {$offer-&gt;getPropertiesJson()})}&#039; data-num=&quot;{$offer.num}&quot; {if $catalog_config.use_offer_unit}data-unit=&quot;{$offer-&gt;getUnit()-&gt;stitle}&quot;{/if} data-change-cost=&#039;{ &quot;.rs-product-barcode&quot;: &quot;{$offer.barcode|default:$product.barcode}&quot;, &quot;.rs-price-new&quot;: &quot;{$product-&gt;getCost(null, $key)}&quot;, &quot;.rs-price-old&quot;: &quot;{$product-&gt;getOldCost($key)}&quot;, &quot;.Cost-general&quot;: &quot;{$product-&gt;getCost(&#039;Цена продажи&#039;, $key)}&quot;}&#039; data-images=&#039;{$offer-&gt;getPhotosJson()}&#039; data-offer-id=&#039;{$offer.id}&#039; data-sticks=&#039;{$offer-&gt;getStickJson()}&#039; {if !$product-&gt;isOffersUse()}data-type-offer=&quot;notExist&quot;{/if}/&gt;
        {/foreach}
        {if $product-&gt;isOffersUse()}
            &lt;input value=&quot;{count($product.offers.items)}&quot; type=&quot;hidden&quot; name=&quot;hidden_offers&quot; class=&quot;hidden_offers&quot; id=&quot;offer_{count($product.offers.items)}&quot; data-type-offer=&quot;notExist&quot; data-info=&quot; &quot; data-num=&quot;0&quot; {if $catalog_config.use_offer_unit}data-unit=&quot;{$product.offers.items.0-&gt;getUnit()-&gt;stitle}&quot;{/if} data-change-cost=&#039;{ &quot;.offerBarcode&quot;: &quot;{$product.barcode}&quot;, &quot;.myCost&quot;: &quot;{t}нет цены{/t}&quot;, &quot;.lastPrice&quot;: &quot; &quot;, &quot;.myCurrency&quot;: &quot; &quot;}&#039; data-offer-id=&#039;0&#039; data-sticks=&quot;[]&quot;/&gt;
        {/if}
        &lt;input type=&quot;hidden&quot; name=&quot;offer&quot; value=&quot;0&quot;/&gt;
    {/if}

{elseif $product-&gt;isOffersUse()}
    {* Простые комплектации *}
    &lt;div class=&quot;product-offers new_checkbox&quot;&gt;
        &lt;span class=&quot;product-offers_pname&quot;&gt;{$product.offer_caption|default:t(&#039;Выберите вариант&#039;)}&lt;/span&gt;
        &lt;div class=&quot;product-offers_values&quot;&gt;
            {if count($product.offers.items)&gt;4}
                {* Если комплектаций много, то отобразим их в виде списка *}
                &lt;select class=&#039;select&#039; name=&quot;offer&quot; style=&quot;margin-bottom: 10px;&quot;&gt;
                    {foreach from=$product.offers.items key=key item=offer name=offers}
                        &lt;option value=&quot;{$key}&quot; {if $offer.num &lt;= 0}class=&quot;nullComplects&quot;{/if}{if $smarty.foreach.offers.first}checked{/if} data-num=&quot;{$offer.num}&quot; {if $catalog_config.use_offer_unit}data-unit=&quot;{$offer-&gt;getUnit()-&gt;stitle}&quot;{/if} data-change-cost=&#039;{ &quot;.offerBarcode&quot;: &quot;{$offer.barcode|default:$product.barcode}&quot;, &quot;.myCost&quot;: &quot;{$product-&gt;getCost(null, $key)}&quot;, &quot;.lastPrice&quot;: &quot;{$product-&gt;getOldCost($key)}&quot;, &quot;.Cost-general&quot;: &quot;{$product-&gt;getCost(&#039;Цена продажи&#039;, $key)}&quot;}&#039; data-images=&#039;{$offer-&gt;getPhotosJson()}&#039; data-offer-id=&#039;{$offer.id}&#039; data-sticks=&#039;{$offer-&gt;getStickJson()}&#039;&gt;{$offer.title}&lt;/option&gt;
                    {/foreach}
                &lt;/select&gt;
            {else}
                {* Если комплектаци мало, то отобразим их в виде радиокнопок *}
                {foreach $product.offers.items as $key =&gt; $offer}
                    &lt;div class=&quot;product-offers_item&quot;&gt;
                        &lt;input value=&quot;{$key}&quot; type=&quot;radio&quot; name=&quot;offer&quot; {if $offer@first}checked{/if} id=&quot;offer_{$key}&quot; data-num=&quot;{$offer.num}&quot; {if $catalog_config.use_offer_unit}data-unit=&quot;{$offer-&gt;getUnit()-&gt;stitle}&quot;{/if} data-change-cost=&#039;{ &quot;.offerBarcode&quot;: &quot;{$offer.barcode|default:$product.barcode}&quot;, &quot;.myCost&quot;: &quot;{$product-&gt;getCost(null, $key)}&quot;, &quot;.lastPrice&quot;: &quot;{$product-&gt;getOldCost($key)}&quot;, &quot;.Cost-general&quot;: &quot;{$product-&gt;getCost(&#039;Цена продажи&#039;, $key)}&quot;}&#039; data-images=&#039;{$offer-&gt;getPhotosJson()}&#039; data-offer-id=&#039;{$offer.id}&#039; data-sticks=&#039;{$offer-&gt;getStickJson()}&#039;&gt;
                        &lt;label {if $offer.num &lt;= 0}class=&quot;nullComplects&quot;{/if} for=&quot;offer_{$key}&quot;&gt;{$offer.title}&lt;/label&gt;
                    &lt;/div&gt;
                {/foreach}
            {/if}
        &lt;/div&gt;
    &lt;/div&gt;
-------------------- Этот блок ниже я добавил.
    {else}
    {foreach $product.offers.items as $key =&gt; $offer}
      &lt;div class=&quot;product-offers new_checkbox&quot;&gt;
          &lt;span class=&quot;product-offers_pname&quot;&gt;{t}Доступный вариант{/t}&lt;/span&gt;
          &lt;div class=&quot;product-offers_item&quot;&gt;
            &lt;label for=&quot;offer_{$key}&quot;&gt;{$offer.title}&lt;/label&gt;
          &lt;/div&gt;
      &lt;/div&gt;
    {/foreach}
--------------------------
{/if}</code></pre></div><p>Вроде все работает нормально. Но хотел чтобы Вы проверили. И Вы говорите что лучше по другому. И говорите что код выводится дважды.</p>]]></content>
			<author>
				<name><![CDATA[Владимир]]></name>
				<uri>http://forum.readyscript.ru/user/258/</uri>
			</author>
			<updated>2019-06-20T09:52:18Z</updated>
			<id>http://forum.readyscript.ru/post/10094/#p10094</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10093/#p10093" />
			<content type="html"><![CDATA[<p>Хочу вывести в карточке товара одну простую комплектацию с условием:<br />Если простых комплектаций больше одной - вывести стандартно.<br />Или<br />Если простая комплектация одна - вывести ее название.</p>]]></content>
			<author>
				<name><![CDATA[Владимир]]></name>
				<uri>http://forum.readyscript.ru/user/258/</uri>
			</author>
			<updated>2019-06-20T09:50:20Z</updated>
			<id>http://forum.readyscript.ru/post/10093/#p10093</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10092/#p10092" />
			<content type="html"><![CDATA[<p>Если честно, то я запутался немного в Вашей задачке. Поэтому давайте ещё раз сначала, желательно с примерами. Вам на какой странице и какую информацию нужно получить?</p>]]></content>
			<author>
				<name><![CDATA[Закусило Александр]]></name>
				<uri>http://forum.readyscript.ru/user/20/</uri>
			</author>
			<updated>2019-06-20T09:46:15Z</updated>
			<id>http://forum.readyscript.ru/post/10092/#p10092</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10091/#p10091" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Закусило Александр пишет:</cite><blockquote><div class="codebox"><pre><code>{if $product-&gt;isOffersUse()}

и

{elseif $product-&gt;isOffersUse()}</code></pre></div><p>Это одно и тоже, т.е. у Вас всё время будет срабатывать один и тотже код, если комплектаций больше чем одна у товара. Соответственно второй участок кода бесполезен.</p><p>Третий участок кода else сработает, если у товара будет 1 комплектация.<br />Т.к. Вам нужно её получить, то лучше всего сделать так. Через <a href="https://readyscript.ru/dev-manual/dev_smarty_rsplugins.html#dev_smarty_rsplugins_function_static_call">https://readyscript.ru/dev-manual/dev_s … tatic_call</a></p><div class="codebox"><pre><code>{static_call var=offer callback=[&#039;\Catalog\Model\Orm\Offer&#039;, &#039;loadByWhere&#039;] params=[[&#039;product_id&#039;=&gt;$product.id, &#039;sortn =&gt; 0]]}</code></pre></div><p>Где уже в <strong>$offer</strong> будет объект нулевой комплектации.<br />Соответственно <strong>{$offer.title}</strong></p></blockquote></div><p>Александр подскажите пожалуйста поподробнее, как исправить.<br />Получается у меня в шаблоне эта ошибка первого и второго участка. Этот код я не трогал, он в дефолтный в шаблоне.<br />Я добавил только третий участок else. И если можно, с ним тоже поподробнее.</p>]]></content>
			<author>
				<name><![CDATA[Владимир]]></name>
				<uri>http://forum.readyscript.ru/user/258/</uri>
			</author>
			<updated>2019-06-20T08:36:49Z</updated>
			<id>http://forum.readyscript.ru/post/10091/#p10091</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10090/#p10090" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>Попробовал этот вариант - есть минус: в корзине размер(модификация) потом не отображается, но уже лучше, чем дописывать вручную к названию, как предлагал Александр. Но было бы лучше от него услышать подробнее про &quot;propsdata_arr&quot; - думаю многим пригодиться. Скажу спасибо за кусок кода с &quot;propsdata_arr&quot; который нужно вставить в шаблон))</p></blockquote></div><p>Не совсем понял, что Вы хотите получить от propsdata_arr. Это просто массив ключ=&gt;значение с параметрами комплектации.</p>]]></content>
			<author>
				<name><![CDATA[Закусило Александр]]></name>
				<uri>http://forum.readyscript.ru/user/20/</uri>
			</author>
			<updated>2019-06-20T07:45:25Z</updated>
			<id>http://forum.readyscript.ru/post/10090/#p10090</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10089/#p10089" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>{if $product-&gt;isOffersUse()}

и

{elseif $product-&gt;isOffersUse()}</code></pre></div><p>Это одно и тоже, т.е. у Вас всё время будет срабатывать один и тотже код, если комплектаций больше чем одна у товара. Соответственно второй участок кода бесполезен.</p><p>Третий участок кода else сработает, если у товара будет 1 комплектация.<br />Т.к. Вам нужно её получить, то лучше всего сделать так. Через <a href="https://readyscript.ru/dev-manual/dev_smarty_rsplugins.html#dev_smarty_rsplugins_function_static_call">https://readyscript.ru/dev-manual/dev_s … tatic_call</a></p><div class="codebox"><pre><code>{static_call var=offer callback=[&#039;\Catalog\Model\Orm\Offer&#039;, &#039;loadByWhere&#039;] params=[[&#039;product_id&#039;=&gt;$product.id, &#039;sortn =&gt; 0]]}</code></pre></div><p>Где уже в <strong>$offer</strong> будет объект нулевой комплектации.<br />Соответственно <strong>{$offer.title}</strong></p>]]></content>
			<author>
				<name><![CDATA[Закусило Александр]]></name>
				<uri>http://forum.readyscript.ru/user/20/</uri>
			</author>
			<updated>2019-06-20T07:44:15Z</updated>
			<id>http://forum.readyscript.ru/post/10089/#p10089</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10088/#p10088" />
			<content type="html"><![CDATA[<p>Ах да, я не написал как реализовал у себя в корзине.<br />В моей теме это шаблон - cartpage_page.tpl</p><p>Также добавил блок с проверкой и выводом:<br /></p><div class="codebox"><pre><code>{if $product-&gt;isOffersUse()}
    {foreach $product.offers.items as $key =&gt; $offer}
        &lt;input id=&quot;offer_{$key}&quot; type=&quot;hidden&quot; name=&quot;hidden_offers&quot; class=&quot;hidden_offers&quot; value=&quot;{$key}&quot; data-info=&#039;{$offer-&gt;getPropertiesJson()}&#039; data-num=&quot;{$offer.num}&quot;/&gt;
        {if $cartitem.offer==$key}
            &lt;input type=&quot;hidden&quot; name=&quot;products[{$index}][offer]&quot; value=&quot;{$key}&quot;/&gt;
        {/if}
    {/foreach}
{/if}

&lt;/div&gt;

{elseif $product-&gt;isOffersUse()}

    &lt;div class=&quot;card-product_offers&quot;&gt;
        &lt;select name=&quot;products[{$index}][offer]&quot; class=&quot;select rs-offer&quot;&gt;
            {foreach $product.offers.items as $key =&gt; $offer}
                &lt;option value=&quot;{$key}&quot; {if $cartitem.offer==$key}selected{/if}&gt;{$offer.title}&lt;/option&gt;
            {/foreach}
        &lt;/select&gt;
    &lt;/div&gt;
    
      {else}
      {foreach $product.offers.items as $key =&gt; $offer}
        &lt;div class=&quot;card-product_offers&quot;&gt;
            &lt;label for=&quot;offer_{$key}&quot;&gt;{$offer.title}&lt;/label&gt;
        &lt;/div&gt;
      {/foreach}
{/if}</code></pre></div><p>Но, все равно жду оценки Александра. Что он скажет на такое решение.</p>]]></content>
			<author>
				<name><![CDATA[Владимир]]></name>
				<uri>http://forum.readyscript.ru/user/258/</uri>
			</author>
			<updated>2019-06-20T07:05:01Z</updated>
			<id>http://forum.readyscript.ru/post/10088/#p10088</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10087/#p10087" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Владимир пишет:</cite><blockquote><p>Попробовал так, даже не знаю верно или нет.<br /></p><div class="codebox"><pre><code>{elseif $product-&gt;isOffersUse()}
    {* Простые комплектации *}
    &lt;div class=&quot;product-offers new_checkbox&quot;&gt;
        &lt;span class=&quot;product-offers_pname&quot;&gt;{$product.offer_caption|default:t(&#039;Выберите вариант&#039;)}&lt;/span&gt;
        &lt;div class=&quot;product-offers_values&quot;&gt;
            {if count($product.offers.items)&gt;4}
                {* Если комплектаций много, то отобразим их в виде списка *}
                &lt;select class=&#039;select&#039; name=&quot;offer&quot; style=&quot;margin-bottom: 10px;&quot;&gt;
                    {foreach from=$product.offers.items key=key item=offer name=offers}
                        &lt;option value=&quot;{$key}&quot; {if $offer.num &lt;= 0}class=&quot;nullComplects&quot;{/if}{if $smarty.foreach.offers.first}checked{/if} data-num=&quot;{$offer.num}&quot; {if $catalog_config.use_offer_unit}data-unit=&quot;{$offer-&gt;getUnit()-&gt;stitle}&quot;{/if} data-change-cost=&#039;{ &quot;.offerBarcode&quot;: &quot;{$offer.barcode|default:$product.barcode}&quot;, &quot;.myCost&quot;: &quot;{$product-&gt;getCost(null, $key)}&quot;, &quot;.lastPrice&quot;: &quot;{$product-&gt;getOldCost($key)}&quot;, &quot;.Cost-general&quot;: &quot;{$product-&gt;getCost(&#039;Цена продажи&#039;, $key)}&quot;}&#039; data-images=&#039;{$offer-&gt;getPhotosJson()}&#039; data-offer-id=&#039;{$offer.id}&#039; data-sticks=&#039;{$offer-&gt;getStickJson()}&#039;&gt;{$offer.title}&lt;/option&gt;
                    {/foreach}
                &lt;/select&gt;
            {else}
                {* Если комплектаци мало, то отобразим их в виде радиокнопок *}
                {foreach $product.offers.items as $key =&gt; $offer}
                    &lt;div class=&quot;product-offers_item&quot;&gt;
                        &lt;input value=&quot;{$key}&quot; type=&quot;radio&quot; name=&quot;offer&quot; {if $offer@first}checked{/if} id=&quot;offer_{$key}&quot; data-num=&quot;{$offer.num}&quot; {if $catalog_config.use_offer_unit}data-unit=&quot;{$offer-&gt;getUnit()-&gt;stitle}&quot;{/if} data-change-cost=&#039;{ &quot;.offerBarcode&quot;: &quot;{$offer.barcode|default:$product.barcode}&quot;, &quot;.myCost&quot;: &quot;{$product-&gt;getCost(null, $key)}&quot;, &quot;.lastPrice&quot;: &quot;{$product-&gt;getOldCost($key)}&quot;, &quot;.Cost-general&quot;: &quot;{$product-&gt;getCost(&#039;Цена продажи&#039;, $key)}&quot;}&#039; data-images=&#039;{$offer-&gt;getPhotosJson()}&#039; data-offer-id=&#039;{$offer.id}&#039; data-sticks=&#039;{$offer-&gt;getStickJson()}&#039;&gt;
                        &lt;label {if $offer.num &lt;= 0}class=&quot;nullComplects&quot;{/if} for=&quot;offer_{$key}&quot;&gt;{$offer.title}&lt;/label&gt;
                    &lt;/div&gt;
                {/foreach}
            {/if}
        &lt;/div&gt;
    &lt;/div&gt;
    {else}
    {foreach $product.offers.items as $key =&gt; $offer}
      &lt;div class=&quot;product-offers new_checkbox&quot;&gt;
          &lt;span class=&quot;product-offers_pname&quot;&gt;{t}Модификация:{/t}&lt;/span&gt;
          &lt;div class=&quot;product-offers_item&quot;&gt;
            &lt;label for=&quot;offer_{$key}&quot;&gt;{$offer.title}&lt;/label&gt;
          &lt;/div&gt;
      &lt;/div&gt;
    {/foreach}
{/if}</code></pre></div></blockquote></div><p>Попробовал этот вариант - есть минус: в корзине размер(модификация) потом не отображается, но уже лучше, чем дописывать вручную к названию, как предлагал Александр. Но было бы лучше от него услышать подробнее про &quot;propsdata_arr&quot; - думаю многим пригодиться. Скажу спасибо за кусок кода с &quot;propsdata_arr&quot; который нужно вставить в шаблон))</p>]]></content>
			<author>
				<name><![CDATA[Роман]]></name>
				<uri>http://forum.readyscript.ru/user/1230/</uri>
			</author>
			<updated>2019-06-19T21:55:53Z</updated>
			<id>http://forum.readyscript.ru/post/10087/#p10087</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10048/#p10048" />
			<content type="html"><![CDATA[<p>Попробовал так, даже не знаю верно или нет.<br /></p><div class="codebox"><pre><code>{elseif $product-&gt;isOffersUse()}
    {* Простые комплектации *}
    &lt;div class=&quot;product-offers new_checkbox&quot;&gt;
        &lt;span class=&quot;product-offers_pname&quot;&gt;{$product.offer_caption|default:t(&#039;Выберите вариант&#039;)}&lt;/span&gt;
        &lt;div class=&quot;product-offers_values&quot;&gt;
            {if count($product.offers.items)&gt;4}
                {* Если комплектаций много, то отобразим их в виде списка *}
                &lt;select class=&#039;select&#039; name=&quot;offer&quot; style=&quot;margin-bottom: 10px;&quot;&gt;
                    {foreach from=$product.offers.items key=key item=offer name=offers}
                        &lt;option value=&quot;{$key}&quot; {if $offer.num &lt;= 0}class=&quot;nullComplects&quot;{/if}{if $smarty.foreach.offers.first}checked{/if} data-num=&quot;{$offer.num}&quot; {if $catalog_config.use_offer_unit}data-unit=&quot;{$offer-&gt;getUnit()-&gt;stitle}&quot;{/if} data-change-cost=&#039;{ &quot;.offerBarcode&quot;: &quot;{$offer.barcode|default:$product.barcode}&quot;, &quot;.myCost&quot;: &quot;{$product-&gt;getCost(null, $key)}&quot;, &quot;.lastPrice&quot;: &quot;{$product-&gt;getOldCost($key)}&quot;, &quot;.Cost-general&quot;: &quot;{$product-&gt;getCost(&#039;Цена продажи&#039;, $key)}&quot;}&#039; data-images=&#039;{$offer-&gt;getPhotosJson()}&#039; data-offer-id=&#039;{$offer.id}&#039; data-sticks=&#039;{$offer-&gt;getStickJson()}&#039;&gt;{$offer.title}&lt;/option&gt;
                    {/foreach}
                &lt;/select&gt;
            {else}
                {* Если комплектаци мало, то отобразим их в виде радиокнопок *}
                {foreach $product.offers.items as $key =&gt; $offer}
                    &lt;div class=&quot;product-offers_item&quot;&gt;
                        &lt;input value=&quot;{$key}&quot; type=&quot;radio&quot; name=&quot;offer&quot; {if $offer@first}checked{/if} id=&quot;offer_{$key}&quot; data-num=&quot;{$offer.num}&quot; {if $catalog_config.use_offer_unit}data-unit=&quot;{$offer-&gt;getUnit()-&gt;stitle}&quot;{/if} data-change-cost=&#039;{ &quot;.offerBarcode&quot;: &quot;{$offer.barcode|default:$product.barcode}&quot;, &quot;.myCost&quot;: &quot;{$product-&gt;getCost(null, $key)}&quot;, &quot;.lastPrice&quot;: &quot;{$product-&gt;getOldCost($key)}&quot;, &quot;.Cost-general&quot;: &quot;{$product-&gt;getCost(&#039;Цена продажи&#039;, $key)}&quot;}&#039; data-images=&#039;{$offer-&gt;getPhotosJson()}&#039; data-offer-id=&#039;{$offer.id}&#039; data-sticks=&#039;{$offer-&gt;getStickJson()}&#039;&gt;
                        &lt;label {if $offer.num &lt;= 0}class=&quot;nullComplects&quot;{/if} for=&quot;offer_{$key}&quot;&gt;{$offer.title}&lt;/label&gt;
                    &lt;/div&gt;
                {/foreach}
            {/if}
        &lt;/div&gt;
    &lt;/div&gt;
    {else}
    {foreach $product.offers.items as $key =&gt; $offer}
      &lt;div class=&quot;product-offers new_checkbox&quot;&gt;
          &lt;span class=&quot;product-offers_pname&quot;&gt;{t}Модификация:{/t}&lt;/span&gt;
          &lt;div class=&quot;product-offers_item&quot;&gt;
            &lt;label for=&quot;offer_{$key}&quot;&gt;{$offer.title}&lt;/label&gt;
          &lt;/div&gt;
      &lt;/div&gt;
    {/foreach}
{/if}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Владимир]]></name>
				<uri>http://forum.readyscript.ru/user/258/</uri>
			</author>
			<updated>2019-06-07T08:18:04Z</updated>
			<id>http://forum.readyscript.ru/post/10048/#p10048</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10047/#p10047" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>{elseif $product-&gt;isOffersUse()}
    {* Простые комплектации *}
    &lt;div class=&quot;product-offers new_checkbox&quot;&gt;
        &lt;span class=&quot;product-offers_pname&quot;&gt;{$product.offer_caption|default:t(&#039;Выберите вариант&#039;)}&lt;/span&gt;
        &lt;div class=&quot;product-offers_values&quot;&gt;
            {if count($product.offers.items)&gt;4}
                {* Если комплектаций много, то отобразим их в виде списка *}
                &lt;select class=&#039;select&#039; name=&quot;offer&quot; style=&quot;margin-bottom: 10px;&quot;&gt;
                    {foreach from=$product.offers.items key=key item=offer name=offers}
                        &lt;option value=&quot;{$key}&quot; {if $offer.num &lt;= 0}class=&quot;nullComplects&quot;{/if}{if $smarty.foreach.offers.first}checked{/if} data-num=&quot;{$offer.num}&quot; {if $catalog_config.use_offer_unit}data-unit=&quot;{$offer-&gt;getUnit()-&gt;stitle}&quot;{/if} data-change-cost=&#039;{ &quot;.offerBarcode&quot;: &quot;{$offer.barcode|default:$product.barcode}&quot;, &quot;.myCost&quot;: &quot;{$product-&gt;getCost(null, $key)}&quot;, &quot;.lastPrice&quot;: &quot;{$product-&gt;getOldCost($key)}&quot;, &quot;.Cost-general&quot;: &quot;{$product-&gt;getCost(&#039;Цена продажи&#039;, $key)}&quot;}&#039; data-images=&#039;{$offer-&gt;getPhotosJson()}&#039; data-offer-id=&#039;{$offer.id}&#039; data-sticks=&#039;{$offer-&gt;getStickJson()}&#039;&gt;{$offer.title}&lt;/option&gt;
                    {/foreach}
                &lt;/select&gt;
            {else}
                {* Если комплектаци мало, то отобразим их в виде радиокнопок *}
                {foreach $product.offers.items as $key =&gt; $offer}
                    &lt;div class=&quot;product-offers_item&quot;&gt;
                        &lt;input value=&quot;{$key}&quot; type=&quot;radio&quot; name=&quot;offer&quot; {if $offer@first}checked{/if} id=&quot;offer_{$key}&quot; data-num=&quot;{$offer.num}&quot; {if $catalog_config.use_offer_unit}data-unit=&quot;{$offer-&gt;getUnit()-&gt;stitle}&quot;{/if} data-change-cost=&#039;{ &quot;.offerBarcode&quot;: &quot;{$offer.barcode|default:$product.barcode}&quot;, &quot;.myCost&quot;: &quot;{$product-&gt;getCost(null, $key)}&quot;, &quot;.lastPrice&quot;: &quot;{$product-&gt;getOldCost($key)}&quot;, &quot;.Cost-general&quot;: &quot;{$product-&gt;getCost(&#039;Цена продажи&#039;, $key)}&quot;}&#039; data-images=&#039;{$offer-&gt;getPhotosJson()}&#039; data-offer-id=&#039;{$offer.id}&#039; data-sticks=&#039;{$offer-&gt;getStickJson()}&#039;&gt;
                        &lt;label {if $offer.num &lt;= 0}class=&quot;nullComplects&quot;{/if} for=&quot;offer_{$key}&quot;&gt;{$offer.title}&lt;/label&gt;
                    &lt;/div&gt;
                {/foreach}
            {/if}
        &lt;/div&gt;
    &lt;/div&gt;
{/if}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Владимир]]></name>
				<uri>http://forum.readyscript.ru/user/258/</uri>
			</author>
			<updated>2019-06-07T07:34:24Z</updated>
			<id>http://forum.readyscript.ru/post/10047/#p10047</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10046/#p10046" />
			<content type="html"><![CDATA[<p>Александр Здравствуйте!<br />Подскажите пожалуйста поподробнее.<br />Хочу вывести одну простую комплектацию с условием:<br />Если простых комплектаций больше одной - вывести стандартно.<br />Или<br />Если простая комплектация одна - вывести ее название.</p><p>В шаблоне product.tpl подгружается через этот блок шаблон product_offers.tpl:<br />&lt;div class=&quot;page-product_offers&quot;&gt;<br />&nbsp; {hook name=&quot;catalog-product:offers&quot; title=&quot;{t}Карточка товара:комплектации{/t}&quot;}<br />&nbsp; &nbsp; {include &quot;%catalog%/product_offers.tpl&quot;}<br />&nbsp; {/hook}<br />&lt;/div&gt;</p>]]></content>
			<author>
				<name><![CDATA[Владимир]]></name>
				<uri>http://forum.readyscript.ru/user/258/</uri>
			</author>
			<updated>2019-06-07T07:23:25Z</updated>
			<id>http://forum.readyscript.ru/post/10046/#p10046</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/10004/#p10004" />
			<content type="html"><![CDATA[<p>Размер - это характеристика в 1С. Размер попадает в комплектации, а не характеристики сайта. Дополнительные реквизиты 1с попадают в характеристики сайта. Не путайте - о каких свойствах вы говорите?<br />----<br />Я говорю о свойствах. Отличие от характеристик в комплектациях в том, что они распространяются на весь товар и уходит это значение всему товару. <br />Судя из описания я так понял, что вы вообще не показываете других комлпектаций, которых нет в наличии. У нас сценарий прописан иначе, мы ожидаем, что если размеры есть, то мы их ожидаем в товаре, хоть их может и не быть в наличии. </p><p>Я думаю, что раз Вы другие скрываете, то у комплектаций в наличии можно, получить характеристики комплектации через подмассив объекта offer propsdata_arr. </p><p>Посмотрите, что у Вас в $offer.propsdata_arr через </p><div class="codebox"><pre><code>&lt;pre&gt;{var_dump($offer.propsdata_arr)}&lt;/pre&gt;</code></pre></div><p>. Названия комплектациям нужны, т.к. в нашей системе используется в большинстве случаев для вывода именно название.</p><p>Т.е. получаете все комплектации проверяете у них значение num поля. И если у Вас комплектация всего одна, то можно извлечь значение через <strong>propsdata_arr</strong></p>]]></content>
			<author>
				<name><![CDATA[Закусило Александр]]></name>
				<uri>http://forum.readyscript.ru/user/20/</uri>
			</author>
			<updated>2019-05-27T15:47:11Z</updated>
			<id>http://forum.readyscript.ru/post/10004/#p10004</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Вывести название основной комплектации в карточке товара]]></title>
			<link rel="alternate" href="http://forum.readyscript.ru/post/9990/#p9990" />
			<content type="html"><![CDATA[<p>Размер - это характеристика в 1С. Размер попадает в комплектации, а не характеристики сайта. Дополнительные реквизиты 1с попадают в характеристики сайта. Не путайте - о каких свойствах вы говорите?<br />Для нулевой комплектации размер прописан (указан в скобках названия основной комплектации)<br />В шаблоне product_offers.tpl где-то идёт проверка и если одна комплектация, то она не пишется. Что подправить, чтобы отображалось название основной комплектации?<br />Размеры были, но проданы. Как вариант можно выгружать нулевые остатки, но тогда выпадает длинный список отсутствующих размеров и это тоже не есть хорошо.</p><p>Писать размер в названии 1000 позиций вручную не хотелось бы - смысл выгрузки из 1с пропадает</p>]]></content>
			<author>
				<name><![CDATA[Роман]]></name>
				<uri>http://forum.readyscript.ru/user/1230/</uri>
			</author>
			<updated>2019-05-24T08:57:42Z</updated>
			<id>http://forum.readyscript.ru/post/9990/#p9990</id>
		</entry>
</feed>
