Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

esculapra

Пользователи
  
  • Публикаций

    1 665
  • Зарегистрирован

  • Посещение

Все публикации пользователя esculapra

  1. закомментируй одну из функций public function edit()
  2. А все ли клиенты умеют работать с экселем? Зачем такие заморочки?
  3. Завантажити / Придбати розширення ЧПУ админка Модуль (админчасть, без фронта). В админке можно создавать / пересоздавать чпу-ссылки. На картинке все понятно. Недавно доработал. Был заказ, а там, например, есть категории и подкатегории Аксессуары - теперь модуль находит в БД соответствие, и делает уникальную ссылку. Например, есть accesories, то другой алиас будет accesories_254. Автогенерация пока отключена. Автор esculapra долучення 25.12.22 Категорія Модули Системные требования Метод активации Без активации Ioncube Loader Нет ocStore 2.3.0.2.4 2.3 2.2 2.1 OpenCart.Pro, ocShop Не проверялось Звернення до сервера розробника Нет  
  4. а можно больше конкретики? "все подгружало - не подгружает"...
  5. Можно заказать под ключ, но то будут не меньше $20+тушка гуся от Паниковского (это шутка, за гуся), так шо берите за $10. Или, Шура, пилите гирю, она золотая (ну не могу не шутить - иначе мозги плавятся, депрессивно-параноидальный психоз... А пошутил - то помогает)
  6. Но заносятся в БД буцім-то, чи я помиляюсь? І липше по смтп-протоколу с поштової скриньки хостінга. Я як не видрочувався, але гугля не приймає, а зробив скриньку - все гаразд. Можна в телегу, як варіант.
  7. esculapra

    ЧПУ админка

    Версия 20.12.2022

    5 раз скачали

    Модуль (админчасть, без фронта). В админке можно создавать / пересоздавать чпу-ссылки. На картинке все понятно. Недавно доработал. Был заказ, а там, например, есть категории и подкатегории Аксессуары - теперь модуль находит в БД соответствие, и делает уникальную ссылку. Например, есть accesories, то другой алиас будет accesories_254. Автогенерация пока отключена.
    Бесплатное
  8. esculapra

    Cannot modify header information

    та скину на почту - в сеть не вылаживал
  9. esculapra

    Cannot modify header information

    насчет БОМа есть решение - мой бесплатный редактор. если в нем открыть файл с БОМ, то сразу видно, типа ?<php нужно просто убрать ? и сохранить
  10. esculapra

    Cannot modify header information

    это предупреждение появляется если уже заголовок ответа отправлен, то есть - отправлено сообщение об ошибке. посмотри логи
  11. Какая версия магаза? Вот была ситуация, примерно аналогичная. С контроллера приходит урл в шаблон, но амперсанд прописывается как &amp; index.php?route=tool/tool_sef&amp;token=bla-bla-bla Пришлось сделать в шаблоне так index.php?route=tool/tool_sef&<?php echo $token_identifier ?>=<?php echo $token ?> то есть амперсанд (жирным выделен) должен быть прописан в самом шаблоне Не знаю почему так, бо если ссылку вставить непосредственно в строку браузера, то отрабатывает нормально. А в системе редирект приводит к ошибке.
  12. Ну якшо треба, домовимось. Сформуй ТЗ - розроблю такий модуль. Пиши у ЛС
  13. Та не суть, важно, шо Харків - це Україна, й Кропивницький (стар. Кіровоград) - це Україна
  14. короче, сохрани страницу когда работает, и измененную. и запакуй мне в архив. сейчас на 2 часа электрику отключили - до полуночи не будет.
  15. Відремонтувати, або рос. - исправить. Я давно не чув "починить, отдать в починку", хіба шо давно, у родичів з рф, та давно з ними не контактую. все, следующий сеанс через 2 часа. кина не буде - электричество кончилось.
  16. там только рокировка 2-х кнопок, то есть все данные на странице есть.
  17. попробуй изменить код <button type="button" id="button-cart" data-loading-text="Загрузка..." class="us-product-btn us-product-btn-active" onClick="addCart()">В корзину</button> это <script> $('#button-cart').on('click', function() { $.ajax({ url: 'index.php?route=checkout/cart/add', type: 'post', data: $('#product input[type=\'text\'], #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'), dataType: 'json', cache: false, beforeSend: function() { $('#button-cart').button('loading'); }, complete: function() { $('#button-cart').button('reset'); }, success: function(json) { $('.alert-dismissible, .text-danger').remove(); $('.form-group').removeClass('has-error'); if (json['error']) { if (json['error']['option']) { let errorOption = ''; for (i in json['error']['option']) { var element = $('#input-option' + i.replace('_', '-')); if (element.parent().hasClass('input-group')) { element.parent().after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } else { element.after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } errorOption += '<div class="alert-text-item">' + json['error']['option'][i] + '</div>'; } usNotify('danger', errorOption); } if (json['error']['error_warning']) { usNotify('danger', json['error']['error_warning']); } if (json['error']['recurring']) { $('select[name=\'recurring_id\']').after('<div class="text-danger">' + json['error']['recurring'] + '</div>'); } // Highlight any found errors $('.text-danger').parent().addClass('has-error'); } if (json['success']) { if (json['isPopup']) { octPopupCart(); } else { usNotify('success', json['success']); } if(typeof octYandexEcommerce == 'function') { octYandexEcommerce(json); } // Need to set timeout otherwise it wont update the total setTimeout(function () { $('#oct-cart-quantity, .header-cart-index, #mobile_cart_index').html(json['total_products']); $('.us-cart-text').html(json['total_amount']); }, 100); } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); }); </script> на это <script> function addCart() { alert('bla-bla-bla');// ну шоб бачити шо все норм. $.ajax({ url: 'index.php?route=checkout/cart/add', type: 'post', data: $('#product input[type=\'text\'], #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'), dataType: 'json', cache: false, beforeSend: function() { $('#button-cart').button('loading'); }, complete: function() { $('#button-cart').button('reset'); }, success: function(json) { $('.alert-dismissible, .text-danger').remove(); $('.form-group').removeClass('has-error'); if (json['error']) { if (json['error']['option']) { let errorOption = ''; for (i in json['error']['option']) { var element = $('#input-option' + i.replace('_', '-')); if (element.parent().hasClass('input-group')) { element.parent().after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } else { element.after('<div class="text-danger">' + json['error']['option'][i] + '</div>'); } errorOption += '<div class="alert-text-item">' + json['error']['option'][i] + '</div>'; } usNotify('danger', errorOption); } if (json['error']['error_warning']) { usNotify('danger', json['error']['error_warning']); } if (json['error']['recurring']) { $('select[name=\'recurring_id\']').after('<div class="text-danger">' + json['error']['recurring'] + '</div>'); } // Highlight any found errors $('.text-danger').parent().addClass('has-error'); } if (json['success']) { if (json['isPopup']) { octPopupCart(); } else { usNotify('success', json['success']); } if(typeof octYandexEcommerce == 'function') { octYandexEcommerce(json); } // Need to set timeout otherwise it wont update the total setTimeout(function () { $('#oct-cart-quantity, .header-cart-index, #mobile_cart_index').html(json['total_products']); $('.us-cart-text').html(json['total_amount']); }, 100); } }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); } </script>
  18. Ну да, только там же связка нескольких таблиц. То есть все можно за очень дополнительную плату. Или в админке (что проще и абсолюьли бесплатно) открыть категорию и в селекте указать пункт выбрать категорию, то есть она становится основной.
  19. так воспроизведите непонятку - сейчас все работает
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.