Автор Тема: Модуль для вывода текста на странице категорий товара.  (Прочитано 1723 раз)

17 Апрель 2016, 14:13:20
  • Фрилансер
  • *
  • Сообщений: 114
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Здравствуйте, подскажите модуль для вывода блока текста на странице категорий товара. Стандартный инструмент текстового блока выводит сверху категории вот так:




Мне нужен еще один дополнительный текстовый блок на странице категорий, что бы он отображал текст под товарами. Вот как тут



С помощью какого модуля можно такое реализовать? Или же стандартными способами. Заранее спасибо.
17 Апрель 2016, 14:28:35
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
Добавь вывод описания или краткого описания в под-категорию и передвинь описание категории в конец файла в product-list.tpl. 
17 Апрель 2016, 14:32:38
Ответ #2
  • Фрилансер
  • *
  • Сообщений: 114
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Добавь вывод описания или краткого описания в под-категорию и передвинь описание категории в конец файла в product-list.tpl.

Спасибо, а можно подробнее, прям очень подробнее )))
17 Апрель 2016, 14:39:45
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 3419
  • Репутация: +79/-6
  • Сообщество PrestaShop
    • Просмотр профиля
В шаблоне /themes/default-bootstrap/category.tpl находишь код
<div class="rte">{$category->description}</div>вырезаешь, добавляешь в конце файла
Там где показывает под-категории
{if isset($subcategories)}добавляешь вывод описания или краткого описания, смотря что у тебя заполнено
{$subcategory.description}
{$subcategory.description_short}
17 Апрель 2016, 15:01:50
Ответ #4
  • Фрилансер
  • *
  • Сообщений: 114
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Я так понял - получится просто перенос текста описания под товары, а я бы хотел иметь два текстовых блока. Скажем краткое описание сверху и полное описание внизу. И в админке - что бы было два блока краткое описание и описание (у меня в админке имеется только один блок - "описание")
17 Апрель 2016, 15:27:34
Ответ #5
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В prestashop у категории только описание. Можно добавить кратное описание, для этого нужно переопределить класс  /classes/Category.php и создать новое поле в таблице ps_category_lang. Подробнее в этой теме Prestashop FAQ - как добавить новое поле к товару, замените product на category и все тоже самое.

Можно установить доп. модуль, который добавляет html блоки. Smart Short Code или Блок HTML.
17 Апрель 2016, 15:31:31
Ответ #6
  • Фрилансер
  • *
  • Сообщений: 114
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В prestashop у категории только описание. Можно добавить кратное описание, для этого нужно переопределить класс  /classes/Category.php и создать новое поле в таблице ps_category_lang. Подробнее в этой теме Prestashop FAQ - как добавить новое поле к товару, замените product на category и все тоже самое.

Можно установить доп. модуль, который добавляет html блоки. Smart Short Code или Блок HTML.

Попробую разобраться, спасибо
17 Апрель 2016, 15:35:36
Ответ #7
  • Фрилансер
  • *
  • Сообщений: 114
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
для этого нужно переопределить класс  /classes/Category.php

Что такое переопределить класс?

создать новое поле в таблице ps_category_lang.
в таблице базы данных MySQL

ALTER TABLE `ps_category_lang`ADD COLUMN `myvar` VARCHAR(255) NULL DEFAULT NULL
17 Апрель 2016, 15:46:24
Ответ #8
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Цитировать
Что такое переопределить класс?
В папке /override/classes/ создать файл с таким же названием override/classes/Category.php и заменить функции, которые вы хотите изменить в базовом классе.
<?php
class Category extends CategoryCore
{
        public 
$myvar;

public static $definition = array(
               ...
               
// Lang fields
'myvar' => array('type' => self::TYPE_HTML'lang' => true'validate' => 'isCleanHtml'),
                        ...
18 Апрель 2016, 09:31:38
Ответ #9
  • Фрилансер
  • *
  • Сообщений: 114
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Спасибо за консультации - помогло. Правда мне помог друг - друг программист.