0 Пользователей и 1 Гость просматривают эту тему.
  • 7 Ответов
  • 1205 Просмотров
*

koshsh

  • Захожу иногда
  • 278
  • 8 / 0
Здравствуйте, довольно простая задачка, но нормального решения не нашел, возможно плохо искал.
Нашел такую конструкцию:

Код
$table_product = JTable::getInstance('product', 'jshop');
            $table_product->load($product->product_id);
            $table_category = JTable::getInstance('category', 'jshop');
            $table_category->load($table_product->getCategory());
            $category_name = $table_category->getName();
            echo $category_name;

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

Подскажите какие есть еще решения?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Так, наверное
Код: php-brief
$table_category = JTable::getInstance('category', 'jshop');
$table_category->load($this->category_id);
$category_name = $table_category->getName();
echo $category_name;
Не будь паразитом, сделай что-нибудь самостоятельно!
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Цитировать
Нашел такую конструкцию:

по шаловливым ручкам бы за такое... :) в 3 раза больше запросов чем нужно...
 
а кстати если плагином сделать, то вообще без дополнительных запросов можно обойтись
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

koshsh

  • Захожу иногда
  • 278
  • 8 / 0
Так, наверное
Код: php-brief
$table_category = JTable::getInstance('category', 'jshop');
$table_category->load($this->category_id);
$category_name = $table_category->getName();
echo $category_name;

Спасибо, работает!
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
а кстати если плагином сделать, то вообще без дополнительных запросов можно обойтись
Точно, в $controller->display() $category->name уже есть.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
угу. там вся $category есть. в onBeforeCheckProductPublish поймать, а в onBeforeDisplayProductView во $view засунуть
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Biss

  • Давно я тут
  • 994
  • 101 / 0
Понадобилось тоже вывести название категории в карточку. По всей видимости плагина не придумали? Можно поступить как предложил robert ? Я попробовал, работает, но может что-то изменилось с тех пор, тема устарела немного ?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
все по прежнему
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться