Перенос строк в описании товара

Тема в разделе "Дизайн, оформление и шаблоны", создана пользователем alhimikos, 29 авг 2015.

  1. alhimikos

    alhimikos Новичок

    Сообщения:
    2
    Симпатии:
    0
    Подскажите, не нашел ответа в интернете, как перенести строки в описании товара который виден при открытии раздела? Когда открываешь сам товар, описание выглядит нормально, как задано в редакторе товара. Да, версия opencart 2.0.3.1
     

    Вложения:

  2. Vlad

    Vlad Эксперт

    Сообщения:
    4.128
    Симпатии:
    999
    Тогда придется снять ограничения на обрезки символов. Сейчас весь html удаляется и поэтому нет переноса. В общем подумаю еще и напишу решение, как то делал.
     
  3. Ален

    Ален Эксперт

    Сообщения:
    2.056
    Симпатии:
    640
    заменить в файле \catalog\controller\product\category.php

    строку
    Код:
    'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get('config_product_description_length')) . '..',
                        
    на этю
    Код:
    'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'), '<br>'), 0, $this->config->get('config_product_description_length')) . '..',
                        
    Вот только когда текст пишите в редакторе, перевод строки делайте через SHIFT + ENTER
     
    alhimikos нравится это.
  4. alhimikos

    alhimikos Новичок

    Сообщения:
    2
    Симпатии:
    0
    Спасибо за ответ! Догадывался что в этом файле это делается. Но не знал что именно дописать. Потому что в языках не особо силен. Код работает, хотя по сути нужно было дописать 3-4 символа. Единственное я изменил перенос строк не через <br> а через <p>.
     
  5. Максим7777

    Максим7777 Новичок

    Сообщения:
    1
    Симпатии:
    0
    Кто нибудь подскажите как убрать две точки .. в кратком описании товара на странице категории? (ОCstore 2.1.0.1)
     
  6. Vlad

    Vlad Эксперт

    Сообщения:
    4.128
    Симпатии:
    999
    ну а при чем тут данная тема. ? А если внимательно посмотрите на код указанный выше, то увидите ваши две точки ))
     
  7. millioner

    millioner Новичок

    Сообщения:
    8
    Симпатии:
    0
    народ помогите, сливается текст поменял
    'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get('config_product_description_length')) . '..', не помогло

    upload_2017-3-10_1-7-53.png
     
  8. millioner

    millioner Новичок

    Сообщения:
    8
    Симпатии:
    0
    также помогите, бесит скачущая корзина upload_2017-3-10_1-10-36.png
     
  9. Vlad

    Vlad Эксперт

    Сообщения:
    4.128
    Симпатии:
    999
    Шаблон не стандартный, версия не известна. Как помогать, неизвестно.
    Обычно бесплатная помощь производится по стандартному шаблону, со всеми вытекающими...

    Если все же вы знаете что делаете и уверены в своих действиях, то возможно вы просто не обновили кеш модификаторов.
     
  10. millioner

    millioner Новичок

    Сообщения:
    8
    Симпатии:
    0
    шаблон xds, верси ОС 2.1.0.1
     
    Последнее редактирование: 10 мар 2017
  11. Vlad

    Vlad Эксперт

    Сообщения:
    4.128
    Симпатии:
    999
    Как и говорил шаблоне не стандартный. Если выше указанные советы и способы не помогают, то только платная помощь.
     
  12. millioner

    millioner Новичок

    Сообщения:
    8
    Симпатии:
    0
    а разве править в шаблоне нужно?
     
  13. Vlad

    Vlad Эксперт

    Сообщения:
    4.128
    Симпатии:
    999
    нет. Но шаблон с помощью модификаторов вносит изменения в контроллер, поэтому точного решения нет, ибо неизвестно... что там и как..
     
  14. guguze

    guguze Новичок

    Сообщения:
    8
    Симпатии:
    3
    Меня тоже замучила эта проблема с кривым переносом описания в ocstore 2.3, но в итоге решил.

    файл catalog/controller/product/catalog.php
    ищем строку:
    Код:
    'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'), '<br>'), 0, $this->config->get($this->config->get('config_theme') . '_product_description_length')) . '..',
    эта шляпа берёт описание товара и удаляет все символы форматирования, кроме br

    меняем на:
    Код:
    'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'), '<br> <p>'), 0, $this->config->get($this->config->get('config_theme') . '_product_description_length')) . '...',
    вуаля, только не пропустить запятую в конце строки

    Далее, catalog/view/theme/тема/template/product/category.tpl

    вместо строчки
    Код:
    <?php echo $product['description']; ?>
    вставить
    Код:
    <?php echo preg_replace('/<\/p>[^<]{0,}<p>/ism', '<br>', $product['description']); ?>
    заменяет тэг <p> на <br>
     
    Последнее редактирование: 21 дек 2018
    karpov нравится это.
  15. Meduza

    Meduza Новичок

    Сообщения:
    1
    Симпатии:
    0
    opencart 2.1.0.2
    Сайт достался на переделку, часть краткого описания "едет" upload_2019-6-6_13-37-16.png
    Первое в редакторе через p upload_2019-6-6_13-38-26.png
    Второе, которое "отъехало" через td
    upload_2019-6-6_13-40-11.png
    Подскажите пожалуйста, как подправить. Благодарю
     
  16. karpov

    karpov Продвинутый пользователь

    Сообщения:
    1.518
    Симпатии:
    241
    А что тут подсказывать. Нет у вас краткого описания, а есть описание, которое с помощью очищения от тегов выведено. Поэтому и слипаются. Пример <td>11111</td><td>2222</td> Где тут пробел??
     
  17. lenysi4ka1

    lenysi4ka1 Новичок

    Сообщения:
    9
    Симпатии:
    0
    Столкнулась с похожей проблемой. В карточке товаров не отображается пробел, при переносе на новую строку.
    При редактировании описания товара новое предложение начинается с новой строки.
    https://prnt.sc/qowdv6
    В карточке отображается нормально https://prnt.sc/qoweit , а в прайсе https://prnt.sc/qowjf4 и на странице с каталогом https://prnt.sc/qowfcj - пробелы отсутствуют.
    Проблема решается только когда ставишь пробел в конце каждой строки при редактировании описания, но редактировать вручную несколько сотен SKU очень проблематично.
    Строка в файле category.php выглядит вот так:
    'description' => utf8_substr(trim(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8'))), 0, $this->config->get('theme_' . $this->config->get('config_theme') . '_product_description_length')) . '..'

    Меняла на Ваш вариант - ничего не дало. Я полный профан в этом. (((

    OpenCart 3.0.3.2 Тут собственно проблема:
    https://edlene.com.ua/index.php?route=product/category&path=428_583