Как вывести характеристики товара по id в любом месте карточки товара


Adems
 Поделиться

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

Здравствуйте! Подскажите пожалуйста, как вывести некоторые из характеристик товара к примеру по их id в каком нибудь месте карточки товара?

К примеру как я сделал с товарами в категорий вместо краткого описания вывел некоторые характеристики по их id.

 

В контроллер category.php  после  

 

$data['products'][] = array(

 

Добавил:

 

'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']),

 

И вместо <?php echo $product['description']; ?>  в шаблоне категорий там где выводится краткое описание товара добавил это:

 

<div class="Ваш класс">
            <?php if ($product['attribute_groups']) { ?>
            <?php foreach ($product['attribute_groups'] as $attribute_group) { ?>
            <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
            <?php if(in_array($attribute['attribute_id'], array(23,24,26,19,33,35,34,52,55,51,37,36,39,18,20))) { ?>
            <?php echo $attribute['name']; ?>:
            <?php echo $attribute['text']; ?>

            <br />
            <?php }?>
            <?php }?>
            <?php } ?>
            <?php } ?>
            </div>

 

Где 23,24,26,19,33,35,34,52,55,51.......  список id необходимых характеристик.

 

Как это реализовать в карточке товара? Хочу некоторые из них вывести вверху карточки как основные и возле поставить ссылку на подробные характеристки.

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

  • RHCk изменил(а) заголовок на Как вывести характеристики товара по id в любом месте карточки товара

Если так, то работает, прописывать через or на разных языках и общие атрибуты для всех товаров.

 

Скрытый текст

            <?php if ($attribute_groups) { ?>
            <div class="tab-pane" id="tab-specification">
              <table class="table table-bordered">
                <?php foreach ($attribute_groups as $attribute_group) { ?>
                <thead>
                  <tr>
            <?php if ($attribute_group['name'] == 'Процессор' or $attribute_group['name'] == 'Processor') { ?>
                    <td colspan="2"><strong><?php echo $attribute_group['name']; ?></strong></td>
                <?php } ?>
                  </tr>
                </thead>
                <tbody>
                  <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
                  <tr>
            <?php if ($attribute['name'] == 'Количество ядер' or $attribute['name'] == 'No. of Cores') { ?>
                    <td><?php echo $attribute['name']; ?></td>
                    <td><?php echo $attribute['text']; ?></td>
                <?php } ?>
                  </tr>
                  <?php } ?>
                </tbody>
                <?php } ?>
              </table>
            </div>
            <?php } ?>


А ссылку по примеру "написать отзыв" сделаете.

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

3 часа назад, nikifalex сказал:

практически точно так же. в чем проблема то?

Доброго дня! Да понимаю что точно также, но чего то туплю, не могу правильно переменную в контроллер написать и самое главное куда. В PHP слаб.

Приблизительно понимаю что надо 'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']),   в контроллер продукта добавить но куда правильно не пойму. И в карточку товара получается надо правильно эту переменную вывести. Если не сложно может подскажете?

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

$data[''attribute_groups'] => $this->model_catalog_product->getProductAttributes($this->request->get['product_id']);

 

и потом  $attribute_groups в шаблоне

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

С этим понятно $data['attribute_groups'] => $this->model_catalog_product->getProductAttributes($this->request->get['product_id']);

 

а вот с $attribute_groups  не очень, понимаю что это вывод переменной так и выводить?

<div class="Ваш класс">
            <?php if ($product['attribute_groups']) { ?>
            <?php foreach ($product['attribute_groups'] as $attribute_group) { ?>
            <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
            <?php if(in_array($attribute['attribute_id'], array(23,24,26,19,33,35,34,52,55,51,37,36,39,18,20))) { ?>
            <?php echo $attribute['name']; ?>:
            <?php echo $attribute['text']; ?>

            <br />
            <?php }?>
            <?php }?>
            <?php } ?>
            <?php } ?>
            </div>

 

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

я вам написал

20 минут назад, nikifalex сказал:

и потом  $attribute_groups в шаблоне

Но вы не читаете и пишете

13 минуты назад, Adems сказал:

<?php if ($product['attribute_groups']) { ?>

поэтому я не могу чем-то вам помочь.

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

6 минут назад, nikifalex сказал:

я вам написал

Но вы не читаете и пишете

поэтому я не могу чем-то вам помочь.

Я всё прочитал, я не разбираюсь в пхп, после добавления в контроллер продукта $data['attribute_groups'] => $this->model_catalog_product->getProductAttributes($this->request->get['product_id']);

белый экран.

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

1 час назад, Adems сказал:

Я всё прочитал, я не разбираюсь в пхп, после добавления в контроллер продукта $data['attribute_groups'] => $this->model_catalog_product->getProductAttributes($this->request->get['product_id']);

белый экран.

 

В контроллере вам ничего не нужно добавлять.

Вам нужно так записать:

Скрытый текст

          <div class="Ваш класс">
            <?php if ($attribute_groups) { ?>
            <?php foreach ($attribute_groups as $attribute_group) { ?>
                  <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
            <?php if(in_array($attribute['attribute_id'], array(23,24,26,19,33,35,34,52,55,51,37,36,39,18,20))) { ?>
            <?php echo $attribute['name']; ?>:
            <?php echo $attribute['text']; ?>
            <br />
            <?php } ?>
            <?php } ?>
            <?php } ?>
            <?php } ?>
            </div>

 

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

9 часов назад, nikifalex сказал:

$data[''attribute_groups'] => $this->model_catalog_product->getProductAttributes($this->request->get['product_id']);

 

и потом  $attribute_groups в шаблоне

Спасибо!

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

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

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

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Показать вместо этого как ссылку

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

×   Нельзя вставлять изображения напрямую. Загрузите или вставьте изображения по URL.

 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу