Перейти к содержанию
Форум поддержки пользователей VamShop

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


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

Можно.

 

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

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

 

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

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

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

 

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

 

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

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

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

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

 

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

 

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

 

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

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

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() {

    }

}

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

Видимо, колонки 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');
Ссылка на сообщение
Поделиться на другие сайты

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

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

msgid "ContentProduct"
msgstr "Товар"
 
msgid "model"
msgstr "артикул"
 
 
 
Что б подхватился новый перевод, сбросьте кэш в Админке - Настройки - Магазин - Сбросить кэш.
Ссылка на сообщение
Поделиться на другие сайты

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

 

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

 

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

 

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

 

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

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