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

Заменить точки на ссылку


Recommended Posts

Всем привет, не могу разобраться с синтаксисом php, помогите.

В файле /catalog/controller/product/category.php есть строчка отвечающая за вывод короткого описания (228 строка):

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

Собственно там меня интересует вывод точек '..' после обрезки короткого описания.

Мне его надо заменить каким то образом на ссылку (на продукт) - что бы эти 2 точки либо другой текст был ссылкой на данный продукт.

 

Может кто то сталкивался - помогите разобраться как правильно это организовать?

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

4 минуты назад, nikifalex сказал:

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

Что конкретно у вас не получается?

 

Это у него вырезано из catalog/controller/product/category.php

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

'product_id' => $result['product_id'],

'thumb' => $image,

'name' => $result['name'],

'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')) . '..',

'price' => $price,

'special' => $special,

'tax' => $tax,

'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1,

'rating' => $result['rating'],

'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url)

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

Откуда вырезано, понятно. ТС, я так понимаю, не знает, как эту самую ссылку сформировать. Подсказываю: в предыдущем сообщении последняя строчка кода.

PS: Но лучше бы вам контроллер вообще почти не трогать . Уберите точки в нем, и все.

А ссылка у вас уже передается в шаблон, прямо там ее и подставляйте

Змінено користувачем Shureg
Надіслати
Поділитися на інших сайтах


Что непонятного я написал? В кратком описании товара при ограничении символов автоматически обрезается текст и вставляется .. (2 точки в конце)

Я нашел файл отвечающий за вывод этих 2 точек. Теперь мне надо 2 точки сделать ссылкой на товар.

Пробовал сделать вот так

'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get('config_product_description_length')) . '<a href="<?php echo $product['href']; ?>">..</a>',

Не получается. Из за синтаксической ошибки PHP - страница не прогружается.

 

Вопрос в том - как сделать точки не просто текстом а ссылкой? (пример на скрине)

category.jpg

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

Нашел решение

'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get('config_product_description_length')) . '<a href='.$this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url).'>...еще</a>',

 

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

Я вам еще раз говорю, не надо там НИЧЕГО делать, где вы делаете. Максимум - убрать эти две точки. А ссылку вставляйте в файле шаблона.

Ваш вариант не только бессмысленную нагрузку на сервер добавляет, но еще и поперек всех принципов опенакарта.

Змінено користувачем Shureg
Надіслати
Поділитися на інших сайтах


Shureg, не совсем понял где это сделать.. Т.е. убрать просто точки, а саму ссылку добавлять непосредственно из файла шаблона вывода? Или как?

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

да, конечно, в шаблоне категории. Там ведь она уже есть, по ней вообще переход и происходит в товар) Просто скопипастить и вставить

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


Shureg, все, понял. Спасибо большое за столь важный для меня совет. А еще могли бы вы более подробно пояснить в чем разница где это реализовывать: в контроллере или в шаблоне? Что бы я на будущее знал)

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

Получение-сохранение данных - в модели. Обработка, подготовка, разные рассчеты - в контроллере. Непосредственно отображение на сайте - в шаблоне.

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


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

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

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

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

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

Вхід

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

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

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

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

Important Information

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