Jump to content

Recommended Posts

Ocstore 2.1.0.2.1

 

Как добавить вместо поиска, новую позицию модуля и выводить туда кнопку обратный звонок и контакты?

 

Share this post


Link to post
Share on other sites

jquery вставкой 

Share this post


Link to post
Share on other sites

Только так? А чтоб заказчик смог сам менять инфу там? Вывести в админке html блок в эту позицию например.

Share this post


Link to post
Share on other sites

А трудность то в чём? Сделать новую схему, или вставить её на место поиска?

Share this post


Link to post
Share on other sites

трудность - какие файлы ковырять и что прописывать?

Share this post


Link to post
Share on other sites

Можно взять модуль в качестве донора

Share this post


Link to post
Share on other sites

типа писать модуль

и встраивать в шаблон

 

ковырять файлы шаблона

прописывать типа $this->config->get('MY-MOdULE-cool-CODE');

 

а по сути вам сюда https://opencartforum.com/forum/44-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%B9-%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5/

Share this post


Link to post
Share on other sites

А трудность то в чём? Сделать новую схему, или вставить её на место поиска?

Это костыль.

Надо потом прописывать везде новые позиции, контроллеры и много чего что негативно влияет на стабильность и скорость (каждая позиция как минимум + 8-10 запросов в БД)

В opencart очень плохо они реализованы

А jQuery самый простой и безкостыльный, универсальный способ

Тем более что jQuery уже как стандарт де факто

Оберните в модуль если хотите

Share this post


Link to post
Share on other sites

Можно взять модуль в качестве донора

Самое 3.14 решение.

Вы в курсе, что там добавляется как минимум +200 запросов к БД на страницу и плюс куча тормозящей логики.

Тот кто делал этот модуль  - без малейшего понятия в архитектуре opencart

  • +1 1

Share this post


Link to post
Share on other sites

Самое 3.14 решение.

Вы в курсе, что там добавляется как минимум +200 запросов к БД на страницу и плюс куча тормозящей логики.

Тот кто делал этот модуль  - без малейшего понятия в архитектуре opencart

верно ради одной строчки поиска (т.е одного места которое статично по сути)

это не вариант

 

как конструктор да

Share this post


Link to post
Share on other sites

верно ради одной строчки поиска (т.е одного места которое статично по сути)

это не вариант

 

как конструктор да

И как "конструктор" нет :)

Вам надо +200 лишних запросов на страницу ?!

 

Проанализируйте хоть часть его ocmod кода, я уже промолчу про сами контроллеры

 

Только часть...

<file path="catalog/controller/common/home.php"><operation error="skip"><search>
            $data['column_left'] = $this->load->controller('common/column_left');
            </search><add position="after">

            $data['mou_bottom'] = $this->load->controller('common/mou_positions/mou_bottom');
            $data['mou_bot_full'] = $this->load->controller('common/mou_positions/mou_bot_full');

            $data['mou_nde_foot'] = $this->load->controller('common/mou_positions/mou_nde_foot');
            $data['mou_nde_left'] = $this->load->controller('common/mou_positions/mou_nde_left');
            $data['mou_nde_right'] = $this->load->controller('common/mou_positions/mou_nde_right');

            $data['mou_hbotom'] = $this->load->controller('common/mou_positions/mou_hbotom');

            $data['mou_top'] = $this->load->controller('common/mou_positions/mou_top');
            $data['mou_top_left'] = $this->load->controller('common/mou_positions/mou_top_left');
            $data['mou_top_right'] = $this->load->controller('common/mou_positions/mou_top_right');
            $data['mou_fulltop'] = $this->load->controller('common/mou_positions/mou_fulltop');
            $data['mou_uncon'] = $this->load->controller('common/mou_positions/mou_uncon');
            $data['mou_con_left'] = $this->load->controller('common/mou_positions/mou_con_left');
            $data['mou_con_right'] = $this->load->controller('common/mou_positions/mou_con_right');


            $data['mou_under_top'] = $this->load->controller('common/mou_positions/mou_under_top');
            $data['mou_under_left'] = $this->load->controller('common/mou_positions/mou_under_left');
            $data['mou_unde_right'] = $this->load->controller('common/mou_positions/mou_unde_right');

            $data['mou_abo_foot'] = $this->load->controller('common/mou_positions/mou_abo_foot');
            </add></operation></file>

Share this post


Link to post
Share on other sites

 

И как "конструктор" нет :)

Вам надо +200 лишних запросов на страницу ?!

 

Проанализируйте хоть часть его ocmod кода, я уже промолчу про сами контроллеры

 

Только часть...

<file path="catalog/controller/common/home.php"><operation error="skip"><search>
            $data['column_left'] = $this->load->controller('common/column_left');
            </search><add position="after">

            $data['mou_bottom'] = $this->load->controller('common/mou_positions/mou_bottom');
            $data['mou_bot_full'] = $this->load->controller('common/mou_positions/mou_bot_full');

            $data['mou_nde_foot'] = $this->load->controller('common/mou_positions/mou_nde_foot');
            $data['mou_nde_left'] = $this->load->controller('common/mou_positions/mou_nde_left');
            $data['mou_nde_right'] = $this->load->controller('common/mou_positions/mou_nde_right');

            $data['mou_hbotom'] = $this->load->controller('common/mou_positions/mou_hbotom');

            $data['mou_top'] = $this->load->controller('common/mou_positions/mou_top');
            $data['mou_top_left'] = $this->load->controller('common/mou_positions/mou_top_left');
            $data['mou_top_right'] = $this->load->controller('common/mou_positions/mou_top_right');
            $data['mou_fulltop'] = $this->load->controller('common/mou_positions/mou_fulltop');
            $data['mou_uncon'] = $this->load->controller('common/mou_positions/mou_uncon');
            $data['mou_con_left'] = $this->load->controller('common/mou_positions/mou_con_left');
            $data['mou_con_right'] = $this->load->controller('common/mou_positions/mou_con_right');


            $data['mou_under_top'] = $this->load->controller('common/mou_positions/mou_under_top');
            $data['mou_under_left'] = $this->load->controller('common/mou_positions/mou_under_left');
            $data['mou_unde_right'] = $this->load->controller('common/mou_positions/mou_unde_right');

            $data['mou_abo_foot'] = $this->load->controller('common/mou_positions/mou_abo_foot');
            </add></operation></file>

мне нет

кому надо

тот будет чем то жертвовать или писать свое

Share this post


Link to post
Share on other sites

Вы в курсе, что там добавляется как минимум +200 запросов к БД на страницу и плюс куча тормозящей логики.

Тот кто делал этот модуль  - без малейшего понятия в архитектуре opencart

 

Я не предлагаю использовать этот модуль полностью, достаточно выпилить всего одну позицию. Одна новая позиция, или один js скрипт, что будет тормозить больше?

Share this post


Link to post
Share on other sites

мне нет

кому надо

тот будет чем то жертвовать или писать свое

А что, кто то в здравом уме хочет получить + 200 запросов на страницу и куча вызовов логики, которая не будет в большинстве случаев использоваться ?

Сомневаюсь. Это надо быть ...

Share this post


Link to post
Share on other sites

Я не предлагаю использовать этот модуль полностью, достаточно выпилить всего одну позицию. Одна новая позиция, или один js скрипт, что будет тормозить больше?

Конечно "позиция"  - она тормозит сервер запросами к БД. Примитивный JS (а в этом случае так и есть)  работает на стороне клиента и очень быстро (мгновенно).

И не забываем что надо изменять еще код контролеров и шаблоны и это из-за всего одной позиции (и как оно повлияет на стабильность ;) ). А JS решением - ничего этого делать не надо

Share this post


Link to post
Share on other sites

тут суть вопроса

не надо никаких костылей идаже джейквери (не обижайтесь Марк) как вы встроили свой модуль везде где только можно это известно

пишите просто

как велил товарсч ДАНИЭЛЬ

Берем обычный модуль капипастим

вставлям свои значения

все будет работать как часики

ВСЯ ИДЕОЛОГИЯ ОПЕНКАРТА ЭТО КАПИПАСТА)))

Share this post


Link to post
Share on other sites

тут суть вопроса

не надо никаких костылей идаже джейквери (не обижайтесь Марк) как вы встроили свой модуль везде где только можно это известно

 

Тут суть даже не в этом. Кнопку обратного звонка сунуть прямо в код header, и всё.

Share this post


Link to post
Share on other sites

Тут суть даже не в этом. Кнопку обратного звонка сунуть прямо в код header, и всё.

да верно

но надо менять из админки текст и так далее написал же человек

поэтому это обычный модуль

типа $this->config->get('MY-MOdULE-cool-CODE'); как я писал

вы думаете как модули то работают

берут из бд значения

профит

Share this post


Link to post
Share on other sites

Только так? А чтоб заказчик смог сам менять инфу там? Вывести в админке html блок в эту позицию например.

 

тогда только модулем

Share this post


Link to post
Share on other sites

ок, а какой функцией jquery это сделать?

 

нашел статью

<script type="text/javascript">

$( init );

function init() {

// Перемещаем параграф из #myDiv1 в #myDiv2
$('#myDiv2').append( $('#myDiv1>p') );
}

</script>

Т.е. мне нужно указать div со строкой поиска, прописать ниже по коду свой div и эта функция все сделает? Так просто?

Edited by serikoff

Share this post


Link to post
Share on other sites

Ну если совсем по извращаться 

$(function(){
  function addElement ($elemen, $position) {
    if ($($position).length > 0)
      $($position).append($($elemen));
    else return false;
  }
});

или просто 

$(function() {
  $('div1').append( $('div2'))
});
Edited by ArtenPitov

Share this post


Link to post
Share on other sites

ещё вопрос, div имеет id и class.

использую append , но отображается старый элемент и новый вместе.

Пробую метод detach ничего не меняется..

Возможно я неправильно указываю данные div <div id="cart" class="btn-group btn-block">

 

Как правильно прописать в методе id и class стиля одновременно?

Или один заменить а второй удалить?

 

Короче не пойму!

Share this post


Link to post
Share on other sites

$('div1').children().remove()

Share this post


Link to post
Share on other sites
$('cart').children(".btn-group", ".btn-block").remove(".btn-group", ".btn-block")

не удаляется..

 

Перепробовал уже кучу вариантов синтаксиса - ничего.

Edited by serikoff

Share this post


Link to post
Share on other sites

Решил задачу - закомментировав весь блок корзины)))

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By kagan
      Скачать/Купить дополнение


      Новая позиция "Под шапкой" для вывода на полную ширину
      Модуль позволяет добавлять модули в схемы, чтобы делать вывод на полную ширину, т.к. стандартный функционал OpenCart этого делать не позволяет.
      Реализован на ocmod.
      Протестирован на OpenCart 2.1.0.1
      Добавил kagan Добавлено 31.01.2017 Категория Прочее Системные требования Метод активации Без активации Ioncube Loader Нет OpenCart ocStore OpenCart.Pro, ocShop  
    • By vitalikweb777
      Всем здравствуйте ! Установил модуль Mega Filter Pro, в нем есть стандартный выбор трех позиций. Решил добавить свою позицию , в opencart я позицию добавил , все модуля выводятся , но как сделать вывод Mega Filter в нужную позицию я не знаю , уже все что мог делал . В итоге я добавил выбор позиции в Mega Filter ,в базу позиция записывается ,но не выводиться на страницу , все другие модули с данной позиции нормально выводятся и работают ,кроме Mega Filter. 
      Буду очень благодарен хотя бы за небольшой намек в какую сторону двигаться .
    • By kagan
      Модуль позволяет добавлять модули в схемы, чтобы делать вывод на полную ширину, т.к. стандартный функционал OpenCart этого делать не позволяет.
      Реализован на ocmod.
      Протестирован на OpenCart 2.1.0.1
    • By tdc
      Добрый вечер, подскажите пожалуйста, как правильно создать новую позицию над футером для модулей на opencart 2.x ?

    • By l3g0
      Добрый день уважаемые форумчане! Помогите пожалуйста разобраться с проблемой. У меня есть шаблон и по умолчанию на нем выводиться модуль Акции (посередине страницы). Мне нужно вывести его в левой колонке. Я поменял ему расположение на левую колонку, но стили поехали. Я хотел решить эту проблему так - в файле внешнего вида модуля акции.tpl присваиваемым классам, допустим "action" добавить, расположение модуля, но не понимаю где храниться текущее значение расположения модуля. Написал так, но не работает:
       
      <div class="action_<?php echo $module[position]; ?>"
       
      </div>
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.