Jump to content

Вывод артикула в карточке товара


Recommended Posts

andrey2014

Как можно осуществить вывод артикула товара в карточке товара при заполнении этого поля в админке?

Link to post
Share on other sites
support

Можно.

 

В Админке - Расширения - Тэги, в тэгах есть {product_model}

Он как раз выводит артикул.

 

Вставляйте этот тэг в нужный шаблон, если карточка товара, то вставляйте метку {product_model} в Админке - Оформление - Шаблоны - Шаблон карточки товара.

Link to post
Share on other sites
shaklov

правильно так:

{if $PRODUCTS_MODEL!=''}{$PRODUCTS_MODEL}{/if}
Link to post
Share on other sites
support

Нет, это ведь раздел про VamShop 2.

 

Там свои метки, т.е. конечно, по сути, всё тоже самое, тот же smarty, те же шаблоны, просто чуть проще код.

Link to post
Share on other sites
shaklov

Точно. Может для этого раздела цветовую тему другую выбрать? Чтобы отличать сразу.

Link to post
Share on other sites
support

Посмотрим, может и есть смысл.

Link to post
Share on other sites

Посмотрим, может и есть смысл.

Имеет-имеет...

:)

Link to post
Share on other sites
support

Что-то пока не нашёл никакой симпатичной темы, как найду, поменяю сразу.

Link to post
Share on other sites
  • 7 months later...
tvoyarybalka

Извините, я так и не нашел то место, куда нужно вставить метку {product_model}. Подскажите более детально. Спасибо.

Link to post
Share on other sites

Это раздел про VamShop 2.

Вот описание меток шаблона карточки товара - http://manual.vamshop.ru/ch16s04.html#idp23569192

Там есть и описание метки {$PRODUCTS_MODEL} и какой шаблон используется карточкой товара.

Link to post
Share on other sites
tvoyarybalka

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

Link to post
Share on other sites

Если прописаны - отображалось бы.

Значит либо не так прописано, либо не то прописано.

Link to post
Share on other sites
tvoyarybalka

В vamshop все отображается. А в vamshop1 нет. Там разные настройки?

Link to post
Share on other sites
  • 5 months later...
Шпаргалка для таких чайников, как я.
 
Вставляем этот код, где хотим видеть артикул в Оформление - Шаблоны - Страница карточки товара.
 
{if {product_model}}
    <p>
        Артикул: {product_model}
    </p>
{/if}
Link to post
Share on other sites

Но есть еще проблемы с артикулами:

 

1. Одинаковый артикул можно задать двум разным товарам. Соответственно при поиске в каталоге по артикулу будет выдавать 2 товара.

 

2. Не работает поиск по артикулу в админке.

Link to post
Share on other sites
support

1. Ну да, это уже ведь от Вас зависит, уникальные только id номера и псевдонимы.

2. Можно попробовать добавить через phpMyAdmin новую таблицу для поиска.

 

В таблицу search_tables по аналогии с существующими записями надо добавить model ContentProdyct и field model

 

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

 

Вы знаете как в phpMyAdmin работать или никогда с ним не работали?

Link to post
Share on other sites

1. Ну да, это уже ведь от Вас зависит, уникальные только id номера и псевдонимы.

2. Можно попробовать добавить через phpMyAdmin новую таблицу для поиска.

 

В таблицу search_tables по аналогии с существующими записями надо добавить model ContentProdyct и field model

 

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

 

Вы знаете как в phpMyAdmin работать или никогда с ним не работали?

 

1. Столкнулся с тем, что двум разным товарам можно задать одинаковый псевдоним. Получается, что из каталога 2 товара вели на одну и туже страницу.

 

2. Попробовал. Только, видимо, тут опечатка, и надо ContentProduct.

 

 

Теперь при поиске в админке по артикулу выдает результат. Но когда кликаю по ссылке выдает ошибку:

 

Missing Method in SearchController

Error: The action 30 is not defined in controller SearchController

Error: Create SearchController::30() in file: app/Controller/SearchController.php.

<?php

class SearchController extends AppController {

    public function 30() {

    }

}

Link to post
Share on other sites
support

Видимо, колонки url и edit_field не заполнили.

В общем, вот sql код целиком таблицы, заполненный с новым полем для поиска по коду товара.

 

Просто в phpMyAdmin в закладке SQL выполните код.

 

DROP TABLE IF EXISTS search_tables;
CREATE TABLE `search_tables` (
  `id` int(10) auto_increment,
  `model` varchar(255) collate utf8_unicode_ci,
  `field` varchar(255) collate utf8_unicode_ci,
  `url` varchar(255) collate utf8_unicode_ci,
  `edit_field` varchar(255) collate utf8_unicode_ci,
  `alternate_anchor` varchar(255) collate utf8_unicode_ci,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
 
INSERT INTO `search_tables` (`id`, `model`, `field`, `url`, `edit_field`, `alternate_anchor`) VALUES 
(1, 'Content', 'alias', '/contents/admin_edit/', 'id', ''),
(2, 'ContentDescription', 'name', '/contents/admin_edit/', 'content_id', ''),
(3, 'ContentDescription', 'description', '/contents/admin_edit/', 'content_id', 'name'),
(4, 'ContentDescription', 'short_description', '/contents/admin_edit/', 'content_id', 'name'),
(5, 'ContentProduct', 'model', '/contents/admin_edit/', 'content_id', ''),
(6, 'ContentLink', 'url', '/contents/admin_edit/', 'content_id', ''),
(7, 'Language', 'name', '/languages/admin_edit/', 'id', ''),
(8, 'DefinedLanguage', 'key', '/defined_languages/admin_edit/', 'key', ''),
(9, 'DefinedLanguage', 'value', '/defined_languages/admin_edit/', 'key', ''),
(10, 'Template', 'name', '/templates/admin_edit/', 'id', ''),
(11, 'Template', 'template', '/templates/admin_edit/', 'id', 'name'),
(12, 'Stylesheet', 'name', '/stylesheets/admin_edit/', 'id', ''),
(13, 'Stylesheet', 'stylesheet', '/stylesheets/admin_edit/', 'id', 'name');
Link to post
Share on other sites
support

Ну и добавьте перевод в /app/Locale/rus/LC_MESSAGES/default.po

Внизу добавьте:

msgid "ContentProduct"
msgstr "Товар"
 
msgid "model"
msgstr "артикул"
 
 
 
Что б подхватился новый перевод, сбросьте кэш в Админке - Настройки - Магазин - Сбросить кэш.
Link to post
Share on other sites
support

Добавил эту правку в VamShop 2 по умолчанию.

Явно лишним не будет.

 

Спасибо.

Link to post
Share on other sites
support

По поводу двух одинаковых псевдонимов я ж вроде отвечал.

 

Вручную, да, можно задать, в общем-то это сделано специально, что б иметь такую возможность на всякий случай.

 

Но. Если вообще не заполнять поле псевдоним, то скрипт сам их генерирует и причём генерирует с проверкой на уникальность.

 

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

 

Автоматическая генерация псевдонимов при создании контента в админке не допустит двух одинаковых.

Link to post
Share on other sites

Спасибо, вопрос решен. Работает.

 

 

Видимо, колонки url и edit_field не заполнили.

 

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