Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Вывод атрибутов вместо описания в категориях


ingenerks

Recommended Posts

Я буквально пару постов выше давал ссылку на готовый модуль http://opencartforum...k-s-atributami/

Совместимость:

- OpenCart v1.5.4.1

- OCStore v1.5.3.1

- OCStore v1.5.1.3

 

На OCStore v1.5.4.1 пойдет?

Надіслати
Поділитися на інших сайтах


Я буквально пару постов выше давал ссылку на готовый модуль http://opencartforum...k-s-atributami/

Совместимость:

- OpenCart v1.5.4.1

- OCStore v1.5.3.1

- OCStore v1.5.1.3

 

На OCStore v1.5.4.1 пойдет?

Да

Надіслати
Поділитися на інших сайтах

catalog\controller\product\category.php, 199

 

			   	 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 100) . '..',
					'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']),
					'price'	   => $price,

catalog\view\theme\default\template\product\category.tpl, 76

<div class="description">
			<?php if($product['attribute_groups']) { ?>
			<table>
				<?php foreach($product['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>
			<?php } ?>
		</div>

 

Подскажите пожалуйста, сделал как было написано, только проблема в том что когда при нажатии ссылки Список атрибуты отображаются, а когда ссылка Сетка атрибуты не отображаются, подскажите где искать?

post-30305-0-15664800-1366813097_thumb.png

post-30305-0-30942100-1366813104_thumb.png

Надіслати
Поділитися на інших сайтах


Нужно так же в скрипт который при переключении отвечает за вывод сетки добавить этот блок!

 

catalog\controller\product\category.php, 199
 

			   	 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 100) . '..',
					'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']),
					'price'	   => $price,


catalog\view\theme\default\template\product\category.tpl, 76
<div class="description">
			<?php if($product['attribute_groups']) { ?>
			<table>
				<?php foreach($product['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>
			<?php } ?>
		</div>

 

Подскажите пожалуйста, сделал как было написано, только проблема в том что когда при нажатии ссылки Список атрибуты отображаются, а когда ссылка Сетка атрибуты не отображаются, подскажите где искать?

Надіслати
Поділитися на інших сайтах

Нужно так же в скрипт который при переключении отвечает за вывод сетки добавить этот блок!

 

Не совсем так. Т.е. добавлять туда не надо, в версии 1.5.4.1 немного другая конструкция - добавляется 1 раз, в начале.

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

 

Вышеприведенный код - вставляем как указано, только вместо description лучше указать какойнибудь другой класс, чтоб его можно было модифицировать с помошью CSS

 

<div class="description">
...
</div>
 

 

Я назвал class="attributes". Ниже в вдух местах, в файле category.tpl ищем где выводится description и добавляем ниже наши аттрибуты. Это линейный (блочный) вид:

 

            html += '  <div class="description">' + $(element).find('.description').html() + '</div>';
            html += '  <div class="attributes">' + $(element).find('.attributes').html() + '</div>';
 

 

Тоже самое надо обязательно проделать и на вид "Сетка". Тоже самое, один в один. Но так как сетка имеет сокращенный вид, и описание даже убирается, то надо прописать в CSS рядом с этим еще один класс для attributes:

 

.product-grid .description, 
.product-grid .attributes {
    display: none;
} 

 

 

Еще один вариант, проще.

 

1. Проделываем те же действия что и в посте #7 на предыдущей странице с файлом catalog\controller\product\category.php

 

2. Ищем в catalog\view\theme\default\template\product\category.tpl

 

<div class="description"><?php echo $product['description']; ?></div>
 

И добавляем в внутрь DIV. Я удалил из кода выше <div class="description">, так как в данном случае уже вносим в этот DIV (т.е. можно не оборачивать аттрибуты в свой отдельный DIV и назначать стили, возьмутся из готового class="description")

      <div class="description"><?php echo $product['description']; ?>
        
            <?php if($product['attribute_groups']) { ?>
            <table>
                <?php foreach($product['attribute_groups'] as $attribute_group) { ?>
                <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>
            <?php } ?>
        
      </div>
 

 

В общем-то, идея достаточно проста и должна быть понятна. Все модификации со стилями - дело рук уже каждого )

Надіслати
Поділитися на інших сайтах


  • 1 month later...

catalog\controller\product\category.php, 199

 

			   	 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 100) . '..',
					'attribute_groups' => $this->model_catalog_product->getProductAttributes($result['product_id']),
					'price'	   => $price,

catalog\view\theme\default\template\product\category.tpl, 76

<div class="description">
			<?php if($product['attribute_groups']) { ?>
			<table>
				<?php foreach($product['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>
			<?php } ?>
		</div>

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

Надіслати
Поділитися на інших сайтах


  • 1 month later...
  • 2 months later...

Может кому то понадобится сделал vqmod

 

Хорошая работа. Но должен заметить, что <font> - это моветон, даже может навредить странице с точки зрения seo, тем паче в большой концентрации.

Надіслати
Поділитися на інших сайтах


из-за модуля filterpro

атрибуты в категориях появляются, а потом исчезают.

в файле filterpro есть такие строки.

по идее по аналогии можно изменить и вставить сюда атрибуты.

Пожалуйста, помогите сделать это!

$description = function_exists('utf8_substr') ? utf8_substr(strip_tags(html_entity_decode($product['description'], ENT_QUOTES, 'UTF-8')), 0, 218) . '..' :
substr(strip_tags(html_entity_decode($product['description'], ENT_QUOTES, 'UTF-8')), 0, 218) . '..';
Надіслати
Поділитися на інших сайтах


добавила строку 

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

в вывод $result[] = array(

кажись помогло

 

так нельзя. перестал работать filterpro

Надіслати
Поділитися на інших сайтах


добавила строку 

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

в вывод $result[] = array(

кажись помогло

 

так нельзя. перестал работать filterpro

 

можно добавить под

$description = function_exists('utf8_substr') ? utf8_substr(strip_tags(html_entity_decode($product['description'], ENT_QUOTES, 'UTF-8')), 0, 218) . '..' :
substr(strip_tags(html_entity_decode($product['description'], ENT_QUOTES, 'UTF-8')), 0, 218) . '..';

строку

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

а потом в filterpro_proucts.tpl уже вывести все, что нужно так же, как описано в теме

и не забыть в category.tpl это продублировать, чтобы при первой загрузке фильтра еще без выбора атрибутов тоже был вывод

  • +1 1
Надіслати
Поділитися на інших сайтах

спасибо за подсказку, но выдает ошибку Parse error: syntax error, unexpected T_DOUBLE_ARROW in 

 

и еще такого файла нет  filterpro_proucts.tpl 

А откуда ему взяться, если вы фильтр, по всей видимости, не покупали, а скачали на варезнике?)

Надіслати
Поділитися на інших сайтах

я перед покупкой мода всегда стараюсь его протестировать на сайте, если возможность. ;)  со многими так поступала, а потом покупала оригинал.

некоторые не подходили. вот и сейчас с смотрю, что с фильтрпро многие моды нормально не стоят и подтормаживает он сильно. выбираю между ним и симоной... пока больше нравился фильтрпро...

Надіслати
Поділитися на інших сайтах


я перед покупкой мода всегда стараюсь его протестировать на сайте, если возможность. ;)  со многими так поступала, а потом покупала оригинал.

некоторые не подходили. вот и сейчас с смотрю, что с фильтрпро многие моды нормально не стоят и подтормаживает он сильно. выбираю между ним и симоной... пока больше нравился фильтрпро...

вот как купите его, увидите этот файл, в который достаточно скопировать код вывода товаров из category.tpl и все будет прекрасно работать

та версия, что у вас сейчас, уже морально устарела и с ней вас ждут лишь мучения, уныние и депрессия :)

Надіслати
Поділитися на інших сайтах

если новая версия встанет и с этим модулем 

OCU Waitlist - уведомление на email при поступлении товара

то с огромным удовольствием! Вы не пробовали?

Надіслати
Поділитися на інших сайтах


если новая версия встанет и с этим модулем 

OCU Waitlist - уведомление на email при поступлении товара

то с огромным удовольствием! Вы не пробовали?

должна встать, так как там хоть и есть изменения category.tpl, но как я уже писал, достаточно эти изменения продублировать в файле фильтра

если все равно боитесь проблем с совместимостью, то вам нужен вот такой фильтр https://opencartforum.com/files/file/1452-%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9-%D1%84%D0%B8%D0%BB%D1%8C%D1%82%D1%80-%D1%82%D0%BE%D0%B2%D0%B0%D1%80%D0%BE%D0%B2-vsfilter-full-%D0%B4%D0%BB%D1%8F-ocstore/

там вообще ничего менять скорее всего не понадобится, но увы - потестировать его вы не сможете (разве что на его же демке), так как он появился очень недавно (я его немного тестировал, и мне он понравился, к тому же по скорости работы он вроде как даже опережает должен опережать фильтрпро, в частности при сложной выборке атрибутов)

  • +1 1
Надіслати
Поділитися на інших сайтах

напишите автору и он скорее всего пойдет вам навстречу, тем более отличий между 1.5.4 и 1.5.5 немного, а сам автор, я думаю, понимает, что еще очень многие пользуются 1.5.4

Надіслати
Поділитися на інших сайтах

  • 1 month later...
  • 4 weeks later...

У меня два вопроса, буду вам признателен за помощь:

1. Как можно вывести в описание товара в категории: (а) часть текста с описания товара и (б) атрибуты товара через запятую?

2. Как можно вывести в описание товара на странице товара( модель и т.д) атрибуты?

 

спасибо

Надіслати
Поділитися на інших сайтах


  • 2 weeks later...

Нужно так же в скрипт который при переключении отвечает за вывод сетки добавить этот блок!

 

Люди добрые! Ткните меня носом пожалста в этот скрипт! Никак не могу разобраться  :(

В сетке выводит какой-то мизер текста и изменение в цифре новодобавленного description'a никакого эффекта не дает..

 

 

И, быть может, знающие люди подскажут, как сделать так, что бы эти атрибуты (которые выводятся вместо короткого описания в категориях) выводились без учета html?

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.