Перейти к содержанию
Официальный форум поддержки Simpla

Рекомендуемые сообщения

Делаем вывод АРТИКУЛА в админке!
Многие сталкиваются с тем, что им необходимо вывести АРТИКУЛ в каталоге товаров.

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

 

1) Открываем api/Products.php ищем следующий участок кода примерно на 246 строке

$keywords = explode(' ', $filter['keyword']);

Ниже добавляем следующую строку

$keywords_table = ', s_variants v ';$keywords_field = ', v.sku ';

Далее в этом же файле ищем ниже участок кода, примерно 249 строка

$keyword_filter .= $this->db->placehold('AND (p.name LIKE "%'.mysql_real_escape_string(trim($keyword)).'%" OR p.meta_keywords LIKE "%'.mysql_real_escape_string(trim($keyword)).'%") ');

Заменяем на код ниже (можно закоментить код выше добавив перед ним: // , а ниже уже вписать этот. - это необязательно!)

$keyword_filter .= $this->db->placehold(' AND p.id=v.product_id AND (v.sku LIKE "%'.mysql_real_escape_string(trim($keyword)).'%" OR p.name LIKE "%'.mysql_real_escape_string(trim($keyword)).'%" OR p.meta_keywords LIKE "%'.mysql_real_escape_string(trim($keyword)).'%") ');

Далее ищем запрос примерно 189 строка

LEFT JOIN __brands b ON p.brand_id = b.id

И ниже вставляем код примерно на 196 строке

$keywords_table

 

Для того чтобы вывести АРТИКУЛ в каталоге нужно перейти к файлу: simpla/design/html/products.tpl и тут находим примерно 97 строку

<a href="{url module=ProductAdmin id=$product->id return=$smarty.server.REQUEST_URI}">{$product->name|escape}</a>

И ниже этой строки вставляем этот код

<br/>Арт.{$variant->sku|escape}

 

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

Изменено пользователем Pelemehka
Ссылка на сообщение
Поделиться на другие сайты

Многие сталкиваются с тем, что им необходимо вывести АРТИКУЛ в каталоге товаров.

Судя по этой фразе, доработка относится к витрине магазина.

Для того чтобы вывести АРТИКУЛ в каталоге нужно перейти к файлу: simpla/design/html/products.tpl и тут находим примерно 97 строку

А судя по этой, делается что-то в админке.

 

Вы бы для начала написали четко и понятно цель доработки.

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

Судя по этой фразе, доработка относится к витрине магазина.А судя по этой, делается что-то в админке.

 

Вы бы для начала написали четко и понятно цель доработки.

 

Я поправил, но думаю для тех, кто ищет решение задачи, будет понятно для чего все это нужно.

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

в последней версии сиплы есть поиск по артикулу

 

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

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

1. Как уже заметил DaVinci, несколько нелогично выходит: Вы заявляете вывод артикула у товара, тогда как у товара артикулов нет, а есть у вариантов, а вариантов и, соответственно, артикулов может быть несколько. Выводится в Вашем способе один из них.

2. Ваш способ затрагивает API, дополнительно усложняя и без того сложный запрос по списку товаров. Этот усложненный запрос применяется не только в админке, но и в других местах, создавая лишнюю совершенно бесполезную нагрузку.

3. Решить задачу вывода артикула ОДНОГО из вариантов товара можно значительно проще, достаточно в шаблоне simpla/design/html/products.tpl вставить {$product->variant->sku|escape}. Совсем ни к чему затевать ради такого пустяка довольно большие изменения, затрагивающие API.

4. Если уж выводить артикул в админке, то надо бы выводить подобно тому, как стандартно сделано для цен, то есть:

4.1 все артикулы,

4.2 с возможностью редактирования.

 

 

В целом похоже на изобретение велосипеда, и весьма кривого...

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

1. Как уже заметил DaVinci, несколько нелогично выходит: Вы заявляете вывод артикула у товара, тогда как у товара артикулов нет, а есть у вариантов, а вариантов и, соответственно, артикулов может быть несколько. Выводится в Вашем способе один из них.

2. Ваш способ затрагивает API, дополнительно усложняя и без того сложный запрос по списку товаров. Этот усложненный запрос применяется не только в админке, но и в других местах, создавая лишнюю совершенно бесполезную нагрузку.

3. Решить задачу вывода артикула ОДНОГО из вариантов товара можно значительно проще, достаточно в шаблоне simpla/design/html/products.tpl вставить {$product->variant->sku|escape}. Совсем ни к чему затевать ради такого пустяка довольно большие изменения, затрагивающие API.

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

4.1 все артикулы,

4.2 с возможностью редактирования.

 

 

В целом похоже на изобретение велосипеда, и весьма кривого...

 

Огромное спасибо за п.3.

Может есть похожий вариант сделать доп. артикул?

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

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...