OC v2.х Убрать описание категорий на страницах пагинации

  • Автор темы Автор темы labirint
  • Дата начала Дата начала

labirint

Разрушитель (V)
Сообщения
129
Реакции
25
Баллы
81
Установлен модуль, добавляющий дополнительное поле описания для категорий (не добавляется к теме). Прошу помочь убрать вывод этого поля на страницах пагинации. В сети есть решение, но оно не подходит для данного модуля. Если кто-то разбирается в коде, прошу помочь с решением.

P.S. от автора:
если Вы знакомы с php, то Вам не составит труда -
ставите условие на get-параметр page > 1
и обнуляете переменную доп.описание = "";

Я не понимаю о чем речь. На всякий случай, добавляю контролер из модуля
PHP:
<?php class ControllerExtensionModuleCatDescriptPlus extends Controller {
    private $name_mod='cat_descript_plus';
    public $data=array();
    private $versi_tpl='';
    private $sett_mod=array();

    public function index() {
        $this->data['pole']='';

        if(isset($this->request->get['path'])) {
            $this->sett_mod=$this->config->get($this->name_mod.'_setting');
            $this->versi_tpl=$this->sett_mod['versi_tpl'];
            $pole=$this->sett_mod['pole'];
            $parts=explode('_', (string)$this->request->get['path']);
            $category_id=(int)array_pop($parts);
            $category_info=$this->getCategory($category_id, $pole);

            if($category_info) {
                $this->data['pole']=html_entity_decode($category_info[$pole], ENT_QUOTES, 'UTF-8');
                return $this->load->view($this->versi_tpl.'module/'.$this->name_mod.'/'.$this->name_mod.'.tpl', $this->data);
            }
        }
    }

    private function getCategory($category_id, $pole) {
        $query=$this->db->query("SELECT `".$pole."` FROM `".DB_PREFIX."category` c LEFT JOIN `".DB_PREFIX."category_description` cd ON(c.`category_id`=cd.`category_id`)LEFT JOIN `".DB_PREFIX."category_to_store` c2s ON(c.`category_id`=c2s.`category_id`)WHERE c.`category_id`=".$category_id." AND cd.`language_id`=".(int)$this->config->get('config_language_id')." AND c2s.`store_id`=".(int)$this->config->get('config_store_id')." AND c.`status`=1 LIMIT 1");
        return $query->row;
    }
}

?>
 
Решение
PHP:
if($category_info) {
                    if (isset($this->request->get['page']) && ($this->request->get['page'] > 1)) {
                            $this->data['pole']='';
                    } else {
                           $this->data['pole']=html_entity_decode($category_info[$pole], ENT_QUOTES, 'UTF-8');
                    }
                return $this->load->view($this->versi_tpl.'module/'.$this->name_mod.'/'.$this->name_mod.'.tpl', $this->data);
            }
Не знаю что за модуль установлен, но принцип будет одинаковым.
В ocstore 2.3.x в контроллере категории catalog\controller\product\category.php код вывода описания категории будет примерно таким
PHP:
            $data['description'] = html_entity_decode($category_info['description'], ENT_QUOTES, 'UTF-8');
            if (isset($this->request->get['page']) && ($this->request->get['page'] > 1)) {
                $data['description'] = '';
            }
Наверно, даже второе условие с page > 1 будет излишним.
Похоже нужно с данной строчкой поработать
PHP:
$this->data['pole']=html_entity_decode($category_info[$pole], ENT_QUOTES, 'UTF-8');
 
Последнее редактирование:
PHP:
if($category_info) {
                    if (isset($this->request->get['page']) && ($this->request->get['page'] > 1)) {
                            $this->data['pole']='';
                    } else {
                           $this->data['pole']=html_entity_decode($category_info[$pole], ENT_QUOTES, 'UTF-8');
                    }
                return $this->load->view($this->versi_tpl.'module/'.$this->name_mod.'/'.$this->name_mod.'.tpl', $this->data);
            }
 
Решение
Огонь. Красавчики, спасибо!!! Симпатии с меня однозначно, только самому нахватает этих же симпатий что-бы поделится. Я за вас не забуду, побольше бы таких. Не могу сюда прикрепить модуль, он называется "Дополнительное описание Категории" автор vier. Модуль бесплатный скачать можно по ссылке https://opencartforum.com/files/file/5127-dopolnitelnoe-opisanie-kategorii/
 
Последнее редактирование:
Назад
Верх