magway

[Решено] Помогите с выводом атрибутов

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

magway    3

Требуется вывести атрибут с id=4 в карточке товара отдельно от остальных. Версия движка opencart 1.5.5.1

Поделиться сообщением


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

 <!-- Выводим атрибут -->

  <?php if ($attribute_groups) { ?>

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

      <?php if ($attribute_group['name'] == 'Название атрибута') { ?>

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

          <span><?php echo $attribute['name']; ?></span> <?php echo html_entity_decode($attribute['text']); ?><br />

        <?php } ?>

      <?php } ?>

    <?php } ?>

  <?php } ?>

  <!-- Выводим атрибут Конец -->

Поделиться сообщением


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

А что мешает сделать тут:

<?php foreach ($attribute_group['attribute'] as $attribute) { ?>
<?php if ($attribute['attribute_id']=='4') { ?>
BLA-bla-bla...
<?php } else { ?>
        <tr>
          <td><?php echo $attribute['name']; ?></td>
          <td><?php echo $attribute['text']; ?></td>
        </tr>
<?php } ?>
<?php } ?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
magway    3
 <!-- Выводим атрибут -->
  <?php if ($attribute_groups) { ?>
    <?php foreach ($attribute_groups as $attribute_group) { ?>
      <?php if ($attribute_group['name'] == 'Название атрибута') { ?>
        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
          <span><?php echo $attribute['name']; ?></span> <?php echo html_entity_decode($attribute['text']); ?><br />
        <?php } ?>
      <?php } ?>
    <?php } ?>
  <?php } ?>
  <!-- Выводим атрибут Конец -->

 

Не выводится. Нужно по id атрибута, если можно скрыть атрибут по id значит и вывести тоже можно. вопрос только как .

Поделиться сообщением


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

Создаёте группу атрибутов например  PDF

 

Создаёте одноимённый атрибут( то есть тоже PDF) и привязываете к группе PDF

 

в product.tpl в нужном месте вставляете

 <!-- Выводим атрибут -->
  <?php if ($attribute_groups) { ?>
    <?php foreach ($attribute_groups as $attribute_group) { ?>
      <?php if ($attribute_group['name'] == 'PDF') { ?>
        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
          <span><?php echo $attribute['name']; ?></span> <?php echo html_entity_decode($attribute['text']); ?><br />
        <?php } ?>
      <?php } ?>
    <?php } ?>
  <?php } ?>
  <!-- Выводим атрибут Конец -->

не просто работает а гарантированно выводится.

Поделиться сообщением


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

Создаёте группу атрибутов например  PDF

 

Создаёте одноимённый атрибут( то есть тоже PDF) и привязываете к группе PDF

 

в product.tpl в нужном месте вставляете

 <!-- Выводим атрибут -->
  <?php if ($attribute_groups) { ?>
    <?php foreach ($attribute_groups as $attribute_group) { ?>
      <?php if ($attribute_group['name'] == 'PDF') { ?>
        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
          <span><?php echo $attribute['name']; ?></span> <?php echo html_entity_decode($attribute['text']); ?><br />
        <?php } ?>
      <?php } ?>
    <?php } ?>
  <?php } ?>
  <!-- Выводим атрибут Конец -->

не просто работает а гарантированно выводится.

Спасибо!!! Работает.

Поделиться сообщением


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

 

А что мешает сделать тут:

<?php foreach ($attribute_group['attribute'] as $attribute) { ?>
<?php if ($attribute['attribute_id']=='4') { ?>
BLA-bla-bla...
<?php } else { ?>
        <tr>
          <td><?php echo $attribute['name']; ?></td>
          <td><?php echo $attribute['text']; ?></td>
        </tr>
<?php } ?>
<?php } ?>

Спасибо!!! Тоже работает

Поделиться сообщением


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

В админке

Каталог -атрибуты

находим нужный

Изменить (в ссылке attribute_id=NNNNN)

Поделиться сообщением


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

А можно ли как-то скрыть определенную группу атрибутов?

Поделиться сообщением


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

В блоке 

<div id="tab-attribute" class="tab-content">


<table class="attribute">
      <?php foreach ($attribute_groups as $attribute_group) { ?>
      <thead>
        <tr>
          <td colspan="2"><?php echo $attribute_group['name']; ?></td>
        </tr>
      </thead>
      <tbody>
        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
        <tr>
          <td><?php echo $attribute['name']; ?></td>
          <td><?php echo $attribute['text']; ?></td>
        </tr>
        <?php } ?>
      </tbody>
      <?php } ?>
    </table>
  </div>

Вставить

 

   <?php if($attribute['attribute_id'] <> X.X.) { ?>        


  <?php } ?>

где   X.X. это ID  атрибута.

 

 

Поделиться сообщением


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

у меня атрибуты прямо в категории к товарам выводятся. Вставлял, внутрь и перед <div class="description">, не скрываются(

Вставляю так:
<?php if($attribute['attribute_id'] <> 24) { ?>        
<div class="hideattributes"></div>
  <?php } ?>
 
А на класс .hideattributes подвешен display:none..
 
Что-то не то делаю видимо..

Поделиться сообщением


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

Дабы не создавать новую похожую тему, напишу здесь.

Почитал, спасибо, полезно, но может кто подскажет как мне это реализовать для создания ссылки для фильтра MegaFilter Pro (иностранный который).

Именно нужно, чтобы в карточке товара снизу была ссылка на товары с такими же атрибутами.

То есть у меня магазин шин, дисков, акб.

На примере шин есть атрибуты: Профиль, Высота, Диаметр. 

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

 

ссылка получается такой: /tyres/light-truck/?mfp=19-profil-shirina[США],20-vysota[США],18-diametr[США]

а нужно, чтобы была такой: 

<a href="/tyres/car/?mfp=19-profil-shirina[215],20-vysota[55],18-diametr[17]">215/55 R17</a>

 

очнь странно, потому что я точно указал те id атрибутов, что в админке.

 

Вот сам код:

<?php foreach ($attribute_group['attribute'] as $attribute) { ?>
<?php if (($attribute['attribute_id']=='19') || ($attribute['attribute_id']=='20') ||($attribute['attribute_id']=='18'))  { ?>
<?php } ?>

<?php } ?>
<a target="_top" href="<?php echo $cut_url."?mfp=19-profil-shirina[".$attribute['text']."],20-vysota[".$attribute['text']."],18-diametr[".$attribute['text']."]"?>">Такие же шины</a>

если вставить строку

<a target="_top" href="<?php echo $cut_url."?mfp=19-profil-shirina[".$attribute['text']."],20-vysota[".$attribute['text']."],18-diametr[".$attribute['text']."]"?>">Такие же шины</a>

перед последним <?php } ?>, то получается:

lb707Y0.png

 

Вопросы:

 

  1. как сделать нормальную рабочую ссылку на основе ID
  2. как сделать условие, чтобы использовались атрибуты определенной группы (например тут для шин, а как быть с категориями дисков, акб и тд?)

Спасибо за возможную помощь, где рыть. Думаю этот пост поможет еще кому-то, у кого подобные магазины

Изменено пользователем Kventin

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу