Страница 1 из 1

Артикул в списке товаров в админке - как добавить?

Добавлено: 20.12.2021, 09:28
idrussia
Хочу в списке товаров добавить артикул (фото - название - цена - кол-во) - где и как это можно сделать?

Добавлено: 20.12.2021, 17:21
OkayCMS
Это делается в tpl файле отвечающем за список товаров (по моему product_list.tpl) в папке design/html

Добавлено: 21.12.2021, 01:45
idrussia
Это понятно, а переменную артикула подсказать можете?

Добавлено: 21.12.2021, 09:10
Nevermore_sial
idrussia писал(а):Это понятно, а переменную артикула подсказать можете?
{$product->variant->sku|escape}

Добавлено: 21.12.2021, 10:25
idrussia
Спасибо, пойду искать, куда вставлять

Добавлено: 22.12.2021, 18:52
Aleks
Если я правильно понял, то вы хотите сделать как на прилагаемом скрине.
Перед ценой я поставил Артикул.
Это сделано в backend\design\html\products.tpl
Строка 133 {*Шапка таблицы*} и далее.
Берем блок <div class="okay_list_heading okay_list_price">
...
</div>
Копируем и вставляем выше.
Вместо price везде ставим sku.
Но как дальше - вопрос. Артикулы не опубликованы. Будем искать.
Данный вопрос меня заинтересовал. Хочу сделать себе.

Добавлено: 23.12.2021, 02:40
idrussia
Да, спасибо, именно об этом я и спрашивал. Полезное и удобное решение было бы.

Добавлено: 23.12.2021, 05:18
Aleks
Таким образом мы вставили в таблицу всего лишь форму для Артикула.
Теперь, видимо, нужно дописать код для вывода в данный столбец артикулов товара.
Это в блоке {*Параметры элемента*}, который ниже.
Пробовал по аналогии для price:
<div class="okay_list_boding okay_list_price">
...
</div>.
Не то.

Добавлено спустя 3 часа 40 минут:
Решение.
Идем в Блок: {*Шапка таблицы*} файла backend\design\html\products.tpl
вставляем:
<div class="okay_list_boding okay_list_sku">
<div class="input-group">
<input class="form-control {if $product->variants[0]->compare_sku > $product->variants[0]->sku}text_warning{/if}" type="text" name="sku[{$product->variants[0]->id}]" value="{$product->variants[0]->sku}">
</div>
</div>
перед:
<div class="okay_list_boding okay_list_name">
Ниже в блоке {*Параметры элемента*}
вставляем:
<div class="okay_list_boding okay_list_sku">
<div class="input-group">
<input class="form-control {if $product->variants[0]->compare_sku > $product->variants[0]->sku}text_warning{/if}" type="text" name="sku[{$product->variants[0]->id}]" value="{$product->variants[0]->sku}">
</div>
</div>
Перед:
<div class="okay_list_boding okay_list_name">
Можно поставить и перед ценой, но на мой взгляд перед названием товара удобнее.
Также надо упорядочить шапку таблицы: файл okay.css в backend.
Не претендую на истину. Хорошо бы прочесть комментарий профи.

Добавлено: 23.12.2021, 14:48
lida2
А зачем так сложно, код для вывода артикула вариантов товара

Код: Выделить всё

{if $product->variants}
{foreach $product->variants as $variant}
    <li>Арт: <span>{$variant->sku|escape}</span></li>
{/foreach}
{/if}


Добавлено спустя 9 минут 38 секунд:
Арт первый вариант

Код: Выделить всё

{if $product->variants[0]->sku}
  <span>{$product->variants[0]->sku|escape}</span>
{/if}

Добавлено: 25.12.2021, 06:44
idrussia
Спасибо вам обоим.

Покрутил оба варианта, второй будет выглядеть корректнее, если обернуть его в дивак

Код: Выделить всё

<div class="okay_list_boding okay_list_sku">
   {if $product->variants[0]->sku}
       <span>{$product->variants[0]->sku|escape}</span>
   {/if}
</div>


и в okay.css накинуть, например

Код: Выделить всё

.okay_list .okay_list_sku{
    width: 120px;
    text-align: left!important;
}


где-нибудь на 3161 строке, что бы по красоте было.