Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

[Решено] Вывод определенных атрибутов


commerce_develop
 Поделиться

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

Здравствуйте!

Делаю магазин на Opencart (ocstore сб.), столкнулся с проблемой вывода элементов на странице товара.

 

Нужно вывести определенные атрибуты в колонке с информацией, с разметкой проблем не возникнет, а вот с самим выводом уже проблемы. Поискав по форуму наткнулся на чем-то похожую тему: https://opencartforum.com/topic/10643-вывод-атрибутов-вместо-описания-в-категориях/ , но проблема в том, что там задача состояла в вывода атрибутов вместо описания, а мне нужно выводить определенную группу атрибутов в определенном месте, то есть к примеру:

 

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

Вопрос: "Как мне вывести именно эту группу атрибутов?".

 

Прикрепляю скрин для более подробного рассмотрения моего вопроса/

 

Спасибо заранее

 

 

post-681765-0-87503800-1396824160_thumb.jpg

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


У вас что,в товаре  несколько различных групп атрибутов,что нужно вывести только какой то определённый?

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

У вас что,в товаре  несколько различных групп атрибутов,что нужно вывести только какой то определённый?

Выходит что так, но нужно не 1, а 3, там на скрине их 3, просто "обрысовал" только 1

 

Запутался сам, в общем результате нужно вывести эти 3 группы (что на скрине), желательно вывод группы атрибутов по имени или id

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



 $this->data['products'][] = array(
....
'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']),
...
  <table class="attribute">
      <?php foreach ($attribute_groups as $attribute_group) { ?>
   
        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
                  
<?php if(!in_array($attribute['attribute_id'], array(19, 20, 21, 22))) { ?>

        <tr>
          <td><?php echo $attribute['name']; ?></td>
          <td><?php echo $attribute['text']; ?></td>
        </tr>
   

как я понимаю 1 "кусок" кода нужно где-то в контроллере вставить, а второй в шаблоне?

Можете уточнить пожалуйста

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


Так нужно вывести в карточке товара?

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

как я понимаю 1 "кусок" кода нужно где-то в контроллере вставить, а второй в шаблоне?

Можете уточнить пожалуйста

Сейчас попробую

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


В карточке товара данный кусок уже как в контроллере так и в шаблоне есть.Здесь немного иначе нужно.Например вывести по ID атрибута.

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

В карточке товара данный кусок уже как в контроллере так и в шаблоне есть.Здесь немного иначе нужно.Например вывести по ID атрибута.

Можете уточнить, или расписать подробно что да как? Думаю людям понадобится, да и тема актуальна.

Я только начинаю изучение MVC так что не силен еще)

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


Создаём  Группу Атрибутов  и прикрепляем к ней Атрибут ( например Атрибут new-Группа атрибутов  new) 

 

добавляем в шаблон в нужное место 

 

   <!-- =====================Атрибуты NEW==================== -->


         
<?php if ($attribute_groups) { ?>
    <?php foreach ($attribute_groups as $attribute_group) { ?>
        <?php if ($attribute_group['name'] == 'new') { ?>
        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
          <?php echo html_entity_decode($attribute['text']); ?><br />
        <?php } ?>
      <?php } ?>
    <?php } ?>
  <?php } ?>
   <!-- =====================Атрибут NEW конец==================== -->
Ссылка на комментарий
Поделиться на других сайтах

 

Создаём  Группу Атрибутов  и прикрепляем к ней Атрибут ( например Атрибут new-Группа атрибутов  new) 

 

добавляем в шаблон в нужное место 

 

   <!-- =====================Атрибуты NEW==================== -->


         
<?php if ($attribute_groups) { ?>
    <?php foreach ($attribute_groups as $attribute_group) { ?>
        <?php if ($attribute_group['name'] == 'new') { ?>
        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
          <?php echo html_entity_decode($attribute['text']); ?><br />
        <?php } ?>
      <?php } ?>
    <?php } ?>
  <?php } ?>
   <!-- =====================Атрибут NEW конец==================== -->

 

Спасибо, сейчас протестирую

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


 

Создаём  Группу Атрибутов  и прикрепляем к ней Атрибут ( например Атрибут new-Группа атрибутов  new) 

 

добавляем в шаблон в нужное место 

 

   <!-- =====================Атрибуты NEW==================== -->


         
<?php if ($attribute_groups) { ?>
    <?php foreach ($attribute_groups as $attribute_group) { ?>
        <?php if ($attribute_group['name'] == 'new') { ?>
        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
          <?php echo html_entity_decode($attribute['text']); ?><br />
        <?php } ?>
      <?php } ?>
    <?php } ?>
  <?php } ?>
   <!-- =====================Атрибут NEW конец==================== -->

 

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

Спасибо большое!

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


  • 1 год спустя...

 $this->data['products'][] = array(
....
'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']),
...
  <table class="attribute">
      <?php foreach ($attribute_groups as $attribute_group) { ?>
   
        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
                  
<?php if(!in_array($attribute['attribute_id'], array(19, 20, 21, 22))) { ?>

        <tr>
          <td><?php echo $attribute['name']; ?></td>
          <td><?php echo $attribute['text']; ?></td>
        </tr>
   

А как вывести в разных столбцах разные определенные атрибуты... 

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


  • 2 года спустя...
В 07.04.2014 в 05:53, Pascha сказал:

<?php if(!in_array($attribute['attribute_id'], array(19, 20, 21, 22))) { ?>

Таким условием у меня выводятся все атрибуты, кроме указанных в массиве. Версия 1.5.6.4

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

  • 6 месяцев спустя...
В 16.01.2018 в 00:24, Pascha сказал:

смотрим сюда
 


!in

восклицательный знак считайте как исключение, отсутствие его - разрешение

<?php if(in_array($attribute['attribute_id'], array(52))) { ?>

 

Может я что не так делаю, но у меня проблема с выводом атрибутов. Надо было вывести 2 атрибута.

пишу так:

<?php if(in_array($attribute['attribute_id'], array(52,16))) { ?>

Выводится все равно только один 52, 16 прям ни в какую не хочет выводится. При этом я даже ставил 16,52, все равно выводится только 52. 16 в атрибутах есть, нужный мне артибут, но прям никак не хочет он появляться. При этом если !in указать, то выводятся все атрибуты, включая и 16ый, но если убрать !, то вновь выводится только 52...

 

Почему так может быть!?) Не подскажите!?)

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


  • 9 месяцев спустя...
  • 3 недели спустя...
В 07.04.2014 в 06:53, Pascha сказал:

<table class="attribute">

      <?php foreach ($attribute_groups as $attribute_group) { ?>

   

        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>

                 

<?php if(!in_array($attribute['attribute_id'], array(19, 20, 21, 22))) { ?>

        <tr>

          <td><?php echo $attribute['name']; ?></td>

          <td><?php echo $attribute['text']; ?></td>

        </tr>

 

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

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


  • 1 год спустя...

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

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

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

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.