Помощь Как в мобильной версии переместить блок AdvancedSearch4 вверх

callist.spb

Создатель
Регистрация
28 Сен 2018
Сообщения
16
Реакции
10
Подскажите как блок модуля переместить в мобильной версии вверх, чтобы реализация была как в модуле Многоуровневое меню. Т.е. при переходе в категорию ПРИСУТСТВОВАЛА кнопка "Фильтр" и ОТКРЫВАЛА блок AS5 . Сейчас же блок находиться далеко снизу и только если вдруг кто-то долистает до него и выберет фильтр, то появится сверху над товарами эта кнопка Фильтр, но в итоге при нажатии на нее она будет перекидывать вниз к блоку AS5. Прикрепил как реализовано в Многоуровневом меню
Тема z.one
 

Вложения

  • 1652351300492.png
    1652351300492.png
    78,8 KB · Просмотры: 10
Последнее редактирование:

GenerationPi

Писатель
Регистрация
26 Янв 2016
Сообщения
4
Реакции
3
Если не боитесь в пыху лезть то можно поправить файлы модуля на 34 строку добавить
require_once(_PS_TOOL_DIR_.'mobile_Detect/Mobile_Detect.php');
В общем краткий пример скинул, так же для моб устройства можно добавить специальный хук и разместить модуль в нем.
Если вариант по проще нужен то подойти может следующий вариант
Вырезать ХТМЛ блок при загрузке страницы посредством JS и вставить в нужное место
PHP:
    public function displayNextStepSearch($id_search, $id_criterion_group, $with_product, $selected_criterion = array(), $selected_criterion_hidden = array())
    {
              $this->mobile_detect = new Mobile_Detect(); // Добавляем переменную которая проверяет
    
        $this->_cleanOutput();
        $ajaxMode = Tools::getValue('ajaxMode', false);
        $this->includeAssets();
        $searchs = As4SearchEngine::getSearch($id_search, (int)$this->context->language->id);
        $json_return = array();
        $hookName = As4SearchEngine::getHookName($searchs[0]['id_hook']);
        $json_return['next_id_criterion_group'] = $this->getNextIdCriterionGroup($id_search);
        As4SearchEngineLogger::log("Retrieve steps");
        $searchs = $this->getCriterionsGroupsAndCriterionsForSearch($searchs, (int)$this->context->language->id, $selected_criterion, $with_product, $id_criterion_group);
        $next_id_criterion_group = AdvancedSearchCriterionGroupClass::getNextIdCriterionGroup($id_search, $id_criterion_group);
        As4SearchEngineLogger::log("Retrieve criterons and results 1");
        $this->context->smarty->assign(array(
            'as_searchs' => $searchs,
            'as_search' => $searchs[0],
            'hookName' => $hookName,
            'criterions_group' => $searchs[0]['criterions_groups'][0],
            'as_selected_criterion' => $selected_criterion,
            'next_id_criterion_group' => $next_id_criterion_group,
        ));
            if ($this->mobile_detect->isMobile()){ // Если моб устройство то выводим одну тпл
             $json_return['html_criteria_block'] = $this->display(__FILE__, $this->templatePrefix . 'pm_advancedsearch_criterions-mobile.tpl');
             } else { // Если десктоп то другую
                $json_return['html_criteria_block'] = $this->display(__FILE__, $this->templatePrefix . 'pm_advancedsearch_criterions.tpl');
             }
       
        if ($searchs[0]['remind_selection'] == 3 || $searchs[0]['remind_selection'] == 2) {
            if ($this->mobile_detect->isMobile()){
              $json_return['html_selection_block'] = $this->display(__FILE__, $this->templatePrefix . 'pm_advancedsearch_selection_block-mobile.tpl');
             } else {
                 $json_return['html_selection_block'] = $this->display(__FILE__, $this->templatePrefix . 'pm_advancedsearch_selection_block.tpl');
             }
           
        }
 
Сверху