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

[Решено] Сократить название товара в витрине "Рекомендуем"


Recommended Posts

Подскажите, как можно «обрезать» название товара в витрине на главной странице? А то у некоторых оно занимает по 4 строки. Видел на модуле фильтров товара сделали, что после определенного кол-ва символов стоит троеточие, а при наведении курсора появлеется окошко с полным названием товара.

Или есть модуль, кот позволяет отображать поля "Артикул (SKU, код производителя):", "UPC" и др. Тогда как сделать, чтоб в витрине выводилось поле не "Название товара", а "Модель" или "UPC", например?

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


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

utf8_truncate(тут нужная вам строка для сокращения, ENT_QUOTES, 'UTF-8')), 400, ' …', true)
400 - количество символов после которых сокращать,

' …' - так специальными символами описываються три точки (можно что то своё добавить)

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

Ну, если на главной, то наверно речь про этот модуль catalogcontrollermodulefeatured.php

Строка... 55... Как-то так:

$this->data['products'][] = array(
'product_id' => $product_info['product_id'],
'thumb'	 => $image,
'name'	  => substr($product_info['name'], 0, 15), // вот она рыба моей мечты
'price'	 => $price,
'special'   => $special,
'rating'	 => $rating,
'reviews'	=> sprintf($this->language->get('text_reviews'), (int)$product_info['reviews']),
'href'	  => $this->url->link('product/product', 'product_id=' . $product_info['product_id']),
);
Надіслати
Поділитися на інших сайтах

Ну, если на главной, то наверно речь про этот модуль catalogcontrollermodulefeatured.php

да, как раз вот это. Вот только нет троеточия - вместо него квадраты. Добавить код ' …' не получилось - одни иероглифы получаются.

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

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


по поводу троеточия попробуйте в 55 строке вставить

'name2'         => $product_info['name'],
'name'         => mb_substr(strip_tags(html_entity_decode($product_info['name'], ENT_QUOTES, 'UTF-8')), 0, 7, 'UTF-8') . '...',
По поводу появления полного описания

в файле featured.tpl

<span title="<?php echo $product['name2']; ?>"><?php echo $product['name']; ?></span>
вместо

<?php echo $product['name']; ?>
Надіслати
Поділитися на інших сайтах


это делается без правки контроллера через CSS

http://htmlbook.ru/css/overflow

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

  • 2 weeks later...

<p>

это делается без правки контроллера через CSS http://htmlbook.ru/css/overflow

</p>

<p>не получилось.</p>

<p>почему то блок, в кот находится текст не реагирует на значения width и height.</p>

<p>Можно запретить перенос строк, но тогда весь текст показывается в одной строке, но не смотря на заданное width и overflow: hidden, длина блока с текстом = длине самого текста.</p>

<p>Видимо надо использовать overflow-x, но мой редактор и браузер не распознал такого кода.</p>

<div> </div>

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


  • 1 year later...
  • 1 year later...

К примеру поле name будет выглядеть так:

'name'    	 => utf8_substr(strip_tags(html_entity_decode($result['name'], ENT_QUOTES, 'UTF-8')), 0, 52) . '..',
Змінено користувачем wikiparse
  • +1 1
Надіслати
Поділитися на інших сайтах

  • 7 months later...

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

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

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

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

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

Вхід

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

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

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

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

Important Information

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