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

SooR

Користувачі
  • Публікації

    1 508
  • З нами

  • Відвідування

Повідомлення, опубліковані користувачем SooR

  1. 2 минуты назад, VladG сказал:

    Возможна ли при покупке доработка фильтра:

    1. Вывод горизонтальный, сверху страницы

    2. Вписать в наш дизайн.

    3. или консультация как это сделать

     

    1. Возможен.

    2. Вписывание проводится вами

    3. Проконсультирую

  2. @VladG , исключите ненужные фильтры и все.

    @tunok777 , добрый день. Это где? Не понял вопрос.

    @ndvr , спасибо, многое уже решалось программно, но в разбросанном виде, готовится на большое обновление. По поводу копирования - больная тема, условий там больше, всего 5 таблиц, а заполняют их разными способами из разных источников, используют многострочные атрибуты как часть описания товара, стикеры и т.д., а еще хотят использовать их как фильтры, то есть одну сущность под *дцать задач, как всегда :)

     

     

  3. @devig , над кэшированием ведутся работы, но конкретно в этом случае мы не выигрываем ничего, а 

    Цитата

    Fatal error: Allowed memory size of ...

    из-за таких вот кэшей в св-ва и массивы в стиле seo_pro получить нефиг делать.

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

    • +1 1
  4. @alexaw

     

    1) Добавьте в конце значения "2" пробел, либо "л.", чтобы изменить его псевдоним, т.к. он совпадает с "2" модели Mazda. Либо измените псевдоним категории-модели 2

    2) Отключите его в настройках модуля

    3) Отключите показ количества в настройках модуля. На быстродействие не влияет.

  5. @alexaw

     

    1) Добавьте в конце значения "2" пробел, либо "л.", чтобы изменить его псевдоним, т.к. он совпадает с "2" модели Mazda. Либо измените псевдоним категории-модели 2

    2) Отключите его в настройках модуля

    3) Отключите показ количества в настройках модуля. На быстродействие не влияет.

    • +1 1
  6. @tunok777 , здравствуйте. Естественно.

     

    Открываем catalog/controller/[extension]/module/ocfilter.php

     

    Находим $option_data = array(

     

    Перед этой строкой добавляем

     

    if ($values && $option['option_id'] != 'm' && $option['option_id'] != 's') {
      $sort_order = array();
    
      foreach ($values as $key => $value) {
        $sort_order[$key] = $value['count'];
      }
    
      array_multisort($sort_order, SORT_DESC, $values);
    }

    Сохраняем, проверяем.

     

    • +1 1
  7. @TeslaFeo , :) интересное у вас суждение.

     

    $.get и $([node]).get() - разные вещи. Многие используют доступ к DOM элементу через JS из jQuery объекта как к элементу массива вот так

    var element = $('#some-el-by-id')[0];

    я же предпочитаю использовать алиас .get(0), мне он кажется более подходящим к стилистике цепочки вызовов jQuery

    var element = $('#some-el-by-id').get(0);

    Док

     

    38 минут назад, TeslaFeo сказал:

    метод remove() удаляет элемент и ничего не возвращает

    Нужно понимать, в каком контексте мы вызываем метод jQuery. В данном случае, контекстом является объект с элементом #ocfilter, согласно этому руководству, этот объект он и вернет, причем, вернет копию удалившегося элемента, что очень удобно.

     

    47 минут назад, TeslaFeo сказал:

    не тестил, но перечитал док

    Очень просто. F12, в консоле пишем 

    console.log($('a:first').remove())

    и смотрим что нам показывает консоль. Если в свойстве length объекта будет 1 - нам вернулся удаленный объект (при условии, что элемент есть в наборе).

     

    50 минут назад, TeslaFeo сказал:

    Но outerHTML - это свойство элемента страницы

    Т.к. jQuery не имеет своего метода возвращающего html элемента с ним вместе, то приходится использовать нативное свойство outerHTML

     

    <div id="html-box"><span>Some Text</span></div>
    
    var innerHTML = $('#html-box').html(); // Вернет <span>Some Text</span>
    var outerHTML = $('#html-box').get(0).outerHTML; // Вернет <div id="html-box"><span>Some Text</span></div>

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

    • +1 1
  8. 7 часов назад, Jackazzm сказал:

    Пытался обернуть в typeof и try catch, но работать как положено отказывается.

     

    1. Версия 4.19 из варезника, старовата и неизвестно через какие руки прошла.

    2. Обернуть в typeof? :unsure: лучше оберните в console.info изучаемый объект, подозреваю, что из DOM уходит #ocfilter-mobile

     

    6 часов назад, TeslaFeo сказал:

    может быть чего-то не понимаю, но я вижу тут бред

    Объясните свое видение?

  9. @Fantozzzio , приветствую.

     

    Откройте catalog/controller/product/category.php

     

    и найдите 

    $data['limit'] = $limit;

    добавьте после

     

    Спойлер
    
    // OCFilter Page Links Start
    $data['ocfilter_pages'] = array();
    
    $this->load->model('catalog/ocfilter');
    
    $ocfilter_pages = $this->model_catalog_ocfilter->getPages();
    
    foreach ($ocfilter_pages as $ocfilter_page) {
      if ($ocfilter_page['category_id'] != $category_id) {
      	continue;
      }
    
      $link = rtrim($this->url->link('product/category', 'path=' . $ocfilter_page['category_id']), '/');
    
      if ($ocfilter_page['keyword']) {
      	$link .= '/' . $ocfilter_page['keyword'];
      } else {
      	$link .= '/' . $ocfilter_page['params'];
      }
    
      if ($this->config->get('config_seo_url_type') == 'seo_pro') {
      	$link .= '/';
      }
    
      $data['ocfilter_pages'][] = array(
        'text' => $ocfilter_page['title'],
        'selected' => (!empty($ocfilter_page_info) && $ocfilter_page_info['ocfilter_page_id'] == $ocfilter_page['ocfilter_page_id']),
        'href' => $link
      );
    }
    // OCFilter Page Links End

     

     

    Откройте catalog/view/theme/[default|ваша_тема]/template/product/category.tpl

     

    Вставьте следующий код там, где вы хотите вывести список ссылок на посадочные. Например, после 

    <div class="row">
      <div class="col-sm-6 text-left"><?php echo $pagination; ?></div>
      <div class="col-sm-6 text-right"><?php echo $results; ?></div>
    </div>

    вставить

     

    Спойлер
    
    <?php if (!empty($ocfilter_pages)) { ?>
    <hr />
    <ul class="list-inline">
      <?php foreach ($ocfilter_pages as $ocfilter_page) { ?>
      <li>
        <?php if ($ocfilter_page['selected']) { ?>
        <strong><?php echo $ocfilter_page['text']; ?></strong>
        <?php } else { ?>
        <a href="<?php echo $ocfilter_page['href']; ?>"><?php echo $ocfilter_page['text']; ?></a>
        <?php } ?>
      </li>
      <?php } ?>
    </ul>
    <?php } ?>

     

     

    Сохраните файлы, очистите и обновите модификаторы, проверьте.

     

    Пример (см. под пагинацией).

     

    UPD 1. Либо воспользуйтесь модификатором

    ocfilter.page-links.ocmod.xml

     

    UPD 2. 17/09/2020

    Модификатор для OpenCart 3

    ocfilter.page-links-opencart-3.ocmod.zip

    • +1 4
  10. @sitegewes , можно, если сможете исключить его зависимости в js сценарии модуля.

    @Ngreen , может они указаны товарам с нулевым количеством или вовсе не указаны товарам? Проверьте.

    @Darilka , из коробки нельзя, только доработкой, которую пока не могу предоставить.

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

Important Information

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