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

Обрезка названия товара


hitball

Recommended Posts

Здравствуйте! Пожалуйста, подскажите как обрезать название товара до 100 символов на странице категорий, и чтоб появлялись точки, если название обрезано и не было точек, если название короткое, до 100 символов. Похожие темы на форуме видела, но они мне не помогли сделать желаемое(

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


22 минуты назад, hitball сказал:

Здравствуйте! Пожалуйста, подскажите как обрезать название товара до 100 символов на странице категорий, и чтоб появлялись точки, если название обрезано и не было точек, если название короткое, до 100 символов. Похожие темы на форуме видела, но они мне не помогли сделать желаемое(

 

Примените к Вашему названию товара следующие стили

white-space: nowrap;

overflow: hidden;

text-overflow: ellipsis;

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


@specialforce22 , я видела где-то на форуме такое решение, но это не то, что я хочу. у меня получаются все одинаковые названия. Нужно именно сократить по количествву символов, как я описала

Снимок.PNG

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


catalog/controller/product/category.php


 

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

'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get($this->config->get('config_theme') . '_product_description_length')) . '..',

...

 

 

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

@SergeTkach у меня опенкарт 2.3 поставила этот код, обрезает, но даже возле тех товаров, где символов меньше заданного максимального ставит "..." ((((

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


 

Цитата

 

Если вы хотите добавлять "..." только для обрезанного описания:

controller/product/category.php

Найти:

 


$this->data['products'][] = array(
 'product_id'  => $result['product_id'],
 

 

Вставить до найденного кода:

 


if (strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')))
{
	if (mb_strlen($result['description'],'UTF-8')>120)
		$result['description'] = utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 120) . '...';
	else
		$result['description'] = strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'));

}

 

в той теме есть такой код, но я не знаю как его адаптировать под 2.3((
Надіслати
Поділитися на інших сайтах


25 минут назад, hitball сказал:

@SergeTkach у меня опенкарт 2.3 поставила этот код, обрезает, но даже возле тех товаров, где символов меньше заданного максимального ставит "..." ((((

Вы не разработчик? Зачем тогда возиться с кодом?)

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

Обратитесь к знающему, сделают как нужно.

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


27 минут назад, hitball сказал:

Немножко могу, но тут не знаю

 

Но опять же, а если средствами CSS довести до ума, определив длину символов!?

 

Попробуйте white-space: normal;

 

А кол-во строк отрегулировать высотой

height: 40px;

 

Допустим в все к тем же названиям применить

height: 40px;

white-space: normal;
overflow: hidden;

text-overflow: ellipsis;

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


47 минут назад, hitball сказал:

Немножко могу, но тут не знаю

 

Надо тогда посчитать кол-во символов исходного названия и обрабатывать лишь в случае превышения кол-ва символов

 

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

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

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

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

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

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

Вхід

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

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

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

Important Information

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