sv2109 Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 Решил создать бесплатный модуль для OpenCart 4 но столкнулся с целой кучей нюансов, которые превращают разработку в сплошной ад.. 1. В 4.0.0.0 можно создать архив модуля с подпапками и он работает, а в 4.0.1.1 уже не работает 2. В 4.0.0.0 вы можете добавить новое событие следующим образом: $this->model_setting_event->addEvent($code,$description,$trigger,$action,$status,$sort_order); но в 4.0.1.0 уже используется массив для событий, что конечно лучше, на зачем же такие изменения делать в минорных версиях!? $this->model_setting_event->addEvent($event); 3. до 4.0.2.0 маршруты были с "|" разделителем: 'marketplace/event|save' но с 4.0.2.0 это уже ".": 'marketplace/event.save' (см. https://github.com/opencart/opencart/issues/11594) 4. 4.0.0.0 использует функцию utf8_strlen() но 4.0.1.0 использует \Opencart\System\Helper\Utf8\strlen И так далее. И вам нужно либо создать отдельную версию модуля для каждой версии OpenCart (и поддерживать их все в будущем), либо добавить кучу конструкций if (version_compare(VERSION... в свой код. И это только малая часть, то, что с чем я сам столкнулся непосредственно. И это при том что вышло всего-то пару минорных версий. Еще даже не версия 4.1.. Что будет в версии 4.3?.. Почему нельзя все подобные изменения которые ломают совместимость модулей внести сразу в главную версию, а потом уже не трогать до новой главной версии? Или если так хочеться изменить то сделать это так, чтобы не поломать совместимость? Можно же в методе addEvent прописать логику, что если там первій параметр это массив то брать данные оттуда, а если строка то брать данные из аргументов. И все, все работает и никому не нужно ничего изменять. Тоже самое с разделителем в маршруте итд. Но нет, нужно добавить целую кучу мелких изменений которые полностью ломают совместимость всех модулей и то что работает на 4.0.0 уже не будет работать на 4.0.1, а то, что работает на 4.0.1 уже не будет на 4.0.2.. Пц.. + документации нету вообще никакой, все приходится искать самостоятельно в коде. + модификаторов в 4 версии нету, убрали полностью, а События покрывают только малую часть функционала и.. выкручивайся как хочешь, уже есть vqmod для 4 версии опеканрта.. добавили его еще в 1 версии движка, чтобы в версии 2 заменить на модификаторы, а в версии 4 отказаться от модификаторов и вернуться обратно к vqmod?.. У меня есть какое-то скрытое чувство, что Даниель люто ненавидит всех разработчиков OpenCart... 9 Надіслати Поділитися на інших сайтах More sharing options... Bn174uk Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 Ничего не обычного, 4.0.0 была и есть сырой, выпустили ее чисто для того, чтобы люди потыкали по находили баги и предложили свои видения решения + у него есть сроки и надо хоть что-то да показать. Это аналог 2.0.x, там тоже в разными X были свои нюансы, в одной сборке ocmod {файлы}.tpl понимал, в другой нет и т.д. Так что ждите когда будет стабильная версия, хотя..а какой смысл?) Если все равно все будут топить за 2.3 12.10.2022 в 15:28, sv2109 сказал: + документации нету вообще никакой, все приходится искать самостоятельно в коде. А она раньше была? 12.10.2022 в 15:28, sv2109 сказал: У меня есть какое-то скрытое чувство, что Даниель люто ненавидит всех разработчиков OpenCart... За столько то лет можно было уже и привыкнуть, что каждая версия отличается от другой 2 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 15:28, sv2109 сказал: Тоже самое с разделителем в маршруте итд. | - некорректный символ в url Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 12 жовтня 2022 Автор Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: За столько то лет можно было уже и привыкнуть, что каждая версия отличается от другой вы совсем не поняли что я написал выше. вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Вопрос что том, что все изменения делаются через одно место.. По хорошему (и это работает в других движках) все большие изменения в коде движка, которые влияют на совместимость модулей добавляются в большие, мажорные версии, в минорных же версиях они или не изменяются вообще или если что-то изменяется то сохраняется совместимость с модулями. В минорных версиях можно добавляться какой-то функционал движка, который не виляет на совместимость, исправлять какие-то баги, но не ломать совместимость. И вопрос не в том, что 4.0.0.0 сырая, я сегодня установил 4.0.1.1 и она такая же сырая, куча ошибок при установке и при работе, например если папка движка для расширений имеет не правильные права доступа до движок вообще нигде об этом не сообщит но установить модуль у вас не получится, мало того, даже ошибки никакой вы не получите. И только если открыть в браузере инструмент разработчика и посмотреть ответ сервера то там можно будет увидеть ошибку.. но сколько обычных пользователей это сделает? да почти вообще никто. В то же время 4.0.1.1 висит на оф. сайте как последняя рекомендуемая версия для загрузки.. При том, что в версии 4.0.2 опять добавили новые изменения, которые опять ломают совместимость модулей.. 3 Надіслати Поділитися на інших сайтах More sharing options... PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 Мене дуже потішило "зручне рішення" Данили про формування коду доповнення, з якого за результатом формується посилання редагування параметрів модуля... $code = basename($file, '.ocmod.zip'); Тобто файл доповнення тепер не назвеш як хочеш, тепер тільки як треба) А не простіше було брати з того ж install.json? Все інше з нього, а code з імені файлу... феноменально) 3 Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 12 жовтня 2022 Автор Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:34, PaulKravchenko сказал: Мене дуже потішило "зручне рішення" Данили про формування коду доповнення, з якого за результатом формується посилання редагування параметрів модуля... $code = basename($file, '.ocmod.zip'); Тобто файл доповнення тепер не назвеш як хочеш, тепер тільки як треба) А не простіше було брати з того ж install.json? Все інше з нього, а code з імені файлу... феноменально) в 4.0.0.0 була підтримка підпапок, тобто можна було файл назвати наприклад sv2109_event_manager_oc4.0_v1.0.ocmod.zip а вже всередині мати папку sv2109_event_manager (і це буде кодом) з файлом install.json. Але в 4.0.1 це забрали, тепер файл install.json має лажати виключно в корені а назва файлу буде автоматично кодом. 1 Надіслати Поділитися на інших сайтах More sharing options... Etegro Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. 4 Надіслати Поділитися на інших сайтах More sharing options... PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 В 12.10.2022 в 16:42, sv2109 сказав: а назва файлу буде автоматично кодом так це і бісить) мій файл - як хочу називаю, а ядру віддаю папку, прописую код в install.json, якось більш.. ну очевидно мабуть Просто трохи прикурив коли вперше побачив на своєму тестовому модулі коли архів обізвав як хотілось)) 1 Надіслати Поділитися на інших сайтах More sharing options... SergeTkach Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 @sv2109 спасибо за описание граблей! 2 Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 14:28, sv2109 сказал: либо добавить кучу конструкций Скрытый текст private $name_arhive = 'My module'; private $code_event = 'mymodule'; private $code = '0000000000000'; private $mame = 'мой модуль'; private $version = '1.0'; private $author = 'BuslikDrev'; private $link = ''; private $version_oc = 2.3; private $paths = array(); public function __construct($foo) { parent::__construct($foo); if (method_exists($this->language, 'set')) { $this->language->set('mymodule_version', $this->version); } if (version_compare(VERSION, '4.0.0', '>=')) { $this->version_oc = 4; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/mymodule/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_path' => 'model_extension_mymodule_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/mymodule/admin/view/template/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '|' ); } elseif (version_compare(VERSION, '3.0.0', '>=')) { $this->version_oc = 3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '/' ); } elseif (version_compare(VERSION, '2.3.0', '>=')) { $this->version_oc = 2.3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'extension/extension', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } else { $this->version_oc = 2; $this->paths = array( 'controller' => array( 'mymodule' => 'module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'extension/module', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'module/mymodule', ), 'model' => array( 'mymodule' => 'module/mymodule', 'mymodule_path' => 'model_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'module/mymodule.tpl', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 $this->url->link учтен? префикс для config ps. Если это расширение, то лучше, мне так кажется, в other Модуль - это то что можно добавить через layoauts 1 Надіслати Поділитися на інших сайтах More sharing options... vier Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: Если все равно все будут топить за 2.3 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. + 1 Надіслати Поділитися на інших сайтах More sharing options... esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Bn174uk Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 Ничего не обычного, 4.0.0 была и есть сырой, выпустили ее чисто для того, чтобы люди потыкали по находили баги и предложили свои видения решения + у него есть сроки и надо хоть что-то да показать. Это аналог 2.0.x, там тоже в разными X были свои нюансы, в одной сборке ocmod {файлы}.tpl понимал, в другой нет и т.д. Так что ждите когда будет стабильная версия, хотя..а какой смысл?) Если все равно все будут топить за 2.3 12.10.2022 в 15:28, sv2109 сказал: + документации нету вообще никакой, все приходится искать самостоятельно в коде. А она раньше была? 12.10.2022 в 15:28, sv2109 сказал: У меня есть какое-то скрытое чувство, что Даниель люто ненавидит всех разработчиков OpenCart... За столько то лет можно было уже и привыкнуть, что каждая версия отличается от другой 2 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 15:28, sv2109 сказал: Тоже самое с разделителем в маршруте итд. | - некорректный символ в url Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 12 жовтня 2022 Автор Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: За столько то лет можно было уже и привыкнуть, что каждая версия отличается от другой вы совсем не поняли что я написал выше. вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Вопрос что том, что все изменения делаются через одно место.. По хорошему (и это работает в других движках) все большие изменения в коде движка, которые влияют на совместимость модулей добавляются в большие, мажорные версии, в минорных же версиях они или не изменяются вообще или если что-то изменяется то сохраняется совместимость с модулями. В минорных версиях можно добавляться какой-то функционал движка, который не виляет на совместимость, исправлять какие-то баги, но не ломать совместимость. И вопрос не в том, что 4.0.0.0 сырая, я сегодня установил 4.0.1.1 и она такая же сырая, куча ошибок при установке и при работе, например если папка движка для расширений имеет не правильные права доступа до движок вообще нигде об этом не сообщит но установить модуль у вас не получится, мало того, даже ошибки никакой вы не получите. И только если открыть в браузере инструмент разработчика и посмотреть ответ сервера то там можно будет увидеть ошибку.. но сколько обычных пользователей это сделает? да почти вообще никто. В то же время 4.0.1.1 висит на оф. сайте как последняя рекомендуемая версия для загрузки.. При том, что в версии 4.0.2 опять добавили новые изменения, которые опять ломают совместимость модулей.. 3 Надіслати Поділитися на інших сайтах More sharing options... PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 Мене дуже потішило "зручне рішення" Данили про формування коду доповнення, з якого за результатом формується посилання редагування параметрів модуля... $code = basename($file, '.ocmod.zip'); Тобто файл доповнення тепер не назвеш як хочеш, тепер тільки як треба) А не простіше було брати з того ж install.json? Все інше з нього, а code з імені файлу... феноменально) 3 Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 12 жовтня 2022 Автор Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:34, PaulKravchenko сказал: Мене дуже потішило "зручне рішення" Данили про формування коду доповнення, з якого за результатом формується посилання редагування параметрів модуля... $code = basename($file, '.ocmod.zip'); Тобто файл доповнення тепер не назвеш як хочеш, тепер тільки як треба) А не простіше було брати з того ж install.json? Все інше з нього, а code з імені файлу... феноменально) в 4.0.0.0 була підтримка підпапок, тобто можна було файл назвати наприклад sv2109_event_manager_oc4.0_v1.0.ocmod.zip а вже всередині мати папку sv2109_event_manager (і це буде кодом) з файлом install.json. Але в 4.0.1 це забрали, тепер файл install.json має лажати виключно в корені а назва файлу буде автоматично кодом. 1 Надіслати Поділитися на інших сайтах More sharing options... Etegro Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. 4 Надіслати Поділитися на інших сайтах More sharing options... PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 В 12.10.2022 в 16:42, sv2109 сказав: а назва файлу буде автоматично кодом так це і бісить) мій файл - як хочу називаю, а ядру віддаю папку, прописую код в install.json, якось більш.. ну очевидно мабуть Просто трохи прикурив коли вперше побачив на своєму тестовому модулі коли архів обізвав як хотілось)) 1 Надіслати Поділитися на інших сайтах More sharing options... SergeTkach Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 @sv2109 спасибо за описание граблей! 2 Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 14:28, sv2109 сказал: либо добавить кучу конструкций Скрытый текст private $name_arhive = 'My module'; private $code_event = 'mymodule'; private $code = '0000000000000'; private $mame = 'мой модуль'; private $version = '1.0'; private $author = 'BuslikDrev'; private $link = ''; private $version_oc = 2.3; private $paths = array(); public function __construct($foo) { parent::__construct($foo); if (method_exists($this->language, 'set')) { $this->language->set('mymodule_version', $this->version); } if (version_compare(VERSION, '4.0.0', '>=')) { $this->version_oc = 4; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/mymodule/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_path' => 'model_extension_mymodule_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/mymodule/admin/view/template/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '|' ); } elseif (version_compare(VERSION, '3.0.0', '>=')) { $this->version_oc = 3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '/' ); } elseif (version_compare(VERSION, '2.3.0', '>=')) { $this->version_oc = 2.3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'extension/extension', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } else { $this->version_oc = 2; $this->paths = array( 'controller' => array( 'mymodule' => 'module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'extension/module', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'module/mymodule', ), 'model' => array( 'mymodule' => 'module/mymodule', 'mymodule_path' => 'model_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'module/mymodule.tpl', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 $this->url->link учтен? префикс для config ps. Если это расширение, то лучше, мне так кажется, в other Модуль - это то что можно добавить через layoauts 1 Надіслати Поділитися на інших сайтах More sharing options... vier Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: Если все равно все будут топить за 2.3 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. + 1 Надіслати Поділитися на інших сайтах More sharing options... esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 15:28, sv2109 сказал: Тоже самое с разделителем в маршруте итд. | - некорректный символ в url Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 12 жовтня 2022 Автор Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: За столько то лет можно было уже и привыкнуть, что каждая версия отличается от другой вы совсем не поняли что я написал выше. вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Вопрос что том, что все изменения делаются через одно место.. По хорошему (и это работает в других движках) все большие изменения в коде движка, которые влияют на совместимость модулей добавляются в большие, мажорные версии, в минорных же версиях они или не изменяются вообще или если что-то изменяется то сохраняется совместимость с модулями. В минорных версиях можно добавляться какой-то функционал движка, который не виляет на совместимость, исправлять какие-то баги, но не ломать совместимость. И вопрос не в том, что 4.0.0.0 сырая, я сегодня установил 4.0.1.1 и она такая же сырая, куча ошибок при установке и при работе, например если папка движка для расширений имеет не правильные права доступа до движок вообще нигде об этом не сообщит но установить модуль у вас не получится, мало того, даже ошибки никакой вы не получите. И только если открыть в браузере инструмент разработчика и посмотреть ответ сервера то там можно будет увидеть ошибку.. но сколько обычных пользователей это сделает? да почти вообще никто. В то же время 4.0.1.1 висит на оф. сайте как последняя рекомендуемая версия для загрузки.. При том, что в версии 4.0.2 опять добавили новые изменения, которые опять ломают совместимость модулей.. 3 Надіслати Поділитися на інших сайтах More sharing options... PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 Мене дуже потішило "зручне рішення" Данили про формування коду доповнення, з якого за результатом формується посилання редагування параметрів модуля... $code = basename($file, '.ocmod.zip'); Тобто файл доповнення тепер не назвеш як хочеш, тепер тільки як треба) А не простіше було брати з того ж install.json? Все інше з нього, а code з імені файлу... феноменально) 3 Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 12 жовтня 2022 Автор Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:34, PaulKravchenko сказал: Мене дуже потішило "зручне рішення" Данили про формування коду доповнення, з якого за результатом формується посилання редагування параметрів модуля... $code = basename($file, '.ocmod.zip'); Тобто файл доповнення тепер не назвеш як хочеш, тепер тільки як треба) А не простіше було брати з того ж install.json? Все інше з нього, а code з імені файлу... феноменально) в 4.0.0.0 була підтримка підпапок, тобто можна було файл назвати наприклад sv2109_event_manager_oc4.0_v1.0.ocmod.zip а вже всередині мати папку sv2109_event_manager (і це буде кодом) з файлом install.json. Але в 4.0.1 це забрали, тепер файл install.json має лажати виключно в корені а назва файлу буде автоматично кодом. 1 Надіслати Поділитися на інших сайтах More sharing options... Etegro Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. 4 Надіслати Поділитися на інших сайтах More sharing options... PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 В 12.10.2022 в 16:42, sv2109 сказав: а назва файлу буде автоматично кодом так це і бісить) мій файл - як хочу називаю, а ядру віддаю папку, прописую код в install.json, якось більш.. ну очевидно мабуть Просто трохи прикурив коли вперше побачив на своєму тестовому модулі коли архів обізвав як хотілось)) 1 Надіслати Поділитися на інших сайтах More sharing options... SergeTkach Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 @sv2109 спасибо за описание граблей! 2 Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 14:28, sv2109 сказал: либо добавить кучу конструкций Скрытый текст private $name_arhive = 'My module'; private $code_event = 'mymodule'; private $code = '0000000000000'; private $mame = 'мой модуль'; private $version = '1.0'; private $author = 'BuslikDrev'; private $link = ''; private $version_oc = 2.3; private $paths = array(); public function __construct($foo) { parent::__construct($foo); if (method_exists($this->language, 'set')) { $this->language->set('mymodule_version', $this->version); } if (version_compare(VERSION, '4.0.0', '>=')) { $this->version_oc = 4; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/mymodule/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_path' => 'model_extension_mymodule_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/mymodule/admin/view/template/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '|' ); } elseif (version_compare(VERSION, '3.0.0', '>=')) { $this->version_oc = 3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '/' ); } elseif (version_compare(VERSION, '2.3.0', '>=')) { $this->version_oc = 2.3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'extension/extension', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } else { $this->version_oc = 2; $this->paths = array( 'controller' => array( 'mymodule' => 'module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'extension/module', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'module/mymodule', ), 'model' => array( 'mymodule' => 'module/mymodule', 'mymodule_path' => 'model_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'module/mymodule.tpl', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 $this->url->link учтен? префикс для config ps. Если это расширение, то лучше, мне так кажется, в other Модуль - это то что можно добавить через layoauts 1 Надіслати Поділитися на інших сайтах More sharing options... vier Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: Если все равно все будут топить за 2.3 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. + 1 Надіслати Поділитися на інших сайтах More sharing options... esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
sv2109 Опубліковано: 12 жовтня 2022 Автор Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: За столько то лет можно было уже и привыкнуть, что каждая версия отличается от другой вы совсем не поняли что я написал выше. вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Вопрос что том, что все изменения делаются через одно место.. По хорошему (и это работает в других движках) все большие изменения в коде движка, которые влияют на совместимость модулей добавляются в большие, мажорные версии, в минорных же версиях они или не изменяются вообще или если что-то изменяется то сохраняется совместимость с модулями. В минорных версиях можно добавляться какой-то функционал движка, который не виляет на совместимость, исправлять какие-то баги, но не ломать совместимость. И вопрос не в том, что 4.0.0.0 сырая, я сегодня установил 4.0.1.1 и она такая же сырая, куча ошибок при установке и при работе, например если папка движка для расширений имеет не правильные права доступа до движок вообще нигде об этом не сообщит но установить модуль у вас не получится, мало того, даже ошибки никакой вы не получите. И только если открыть в браузере инструмент разработчика и посмотреть ответ сервера то там можно будет увидеть ошибку.. но сколько обычных пользователей это сделает? да почти вообще никто. В то же время 4.0.1.1 висит на оф. сайте как последняя рекомендуемая версия для загрузки.. При том, что в версии 4.0.2 опять добавили новые изменения, которые опять ломают совместимость модулей.. 3 Надіслати Поділитися на інших сайтах More sharing options... PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 Мене дуже потішило "зручне рішення" Данили про формування коду доповнення, з якого за результатом формується посилання редагування параметрів модуля... $code = basename($file, '.ocmod.zip'); Тобто файл доповнення тепер не назвеш як хочеш, тепер тільки як треба) А не простіше було брати з того ж install.json? Все інше з нього, а code з імені файлу... феноменально) 3 Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 12 жовтня 2022 Автор Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:34, PaulKravchenko сказал: Мене дуже потішило "зручне рішення" Данили про формування коду доповнення, з якого за результатом формується посилання редагування параметрів модуля... $code = basename($file, '.ocmod.zip'); Тобто файл доповнення тепер не назвеш як хочеш, тепер тільки як треба) А не простіше було брати з того ж install.json? Все інше з нього, а code з імені файлу... феноменально) в 4.0.0.0 була підтримка підпапок, тобто можна було файл назвати наприклад sv2109_event_manager_oc4.0_v1.0.ocmod.zip а вже всередині мати папку sv2109_event_manager (і це буде кодом) з файлом install.json. Але в 4.0.1 це забрали, тепер файл install.json має лажати виключно в корені а назва файлу буде автоматично кодом. 1 Надіслати Поділитися на інших сайтах More sharing options... Etegro Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. 4 Надіслати Поділитися на інших сайтах More sharing options... PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 В 12.10.2022 в 16:42, sv2109 сказав: а назва файлу буде автоматично кодом так це і бісить) мій файл - як хочу називаю, а ядру віддаю папку, прописую код в install.json, якось більш.. ну очевидно мабуть Просто трохи прикурив коли вперше побачив на своєму тестовому модулі коли архів обізвав як хотілось)) 1 Надіслати Поділитися на інших сайтах More sharing options... SergeTkach Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 @sv2109 спасибо за описание граблей! 2 Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 14:28, sv2109 сказал: либо добавить кучу конструкций Скрытый текст private $name_arhive = 'My module'; private $code_event = 'mymodule'; private $code = '0000000000000'; private $mame = 'мой модуль'; private $version = '1.0'; private $author = 'BuslikDrev'; private $link = ''; private $version_oc = 2.3; private $paths = array(); public function __construct($foo) { parent::__construct($foo); if (method_exists($this->language, 'set')) { $this->language->set('mymodule_version', $this->version); } if (version_compare(VERSION, '4.0.0', '>=')) { $this->version_oc = 4; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/mymodule/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_path' => 'model_extension_mymodule_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/mymodule/admin/view/template/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '|' ); } elseif (version_compare(VERSION, '3.0.0', '>=')) { $this->version_oc = 3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '/' ); } elseif (version_compare(VERSION, '2.3.0', '>=')) { $this->version_oc = 2.3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'extension/extension', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } else { $this->version_oc = 2; $this->paths = array( 'controller' => array( 'mymodule' => 'module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'extension/module', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'module/mymodule', ), 'model' => array( 'mymodule' => 'module/mymodule', 'mymodule_path' => 'model_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'module/mymodule.tpl', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 $this->url->link учтен? префикс для config ps. Если это расширение, то лучше, мне так кажется, в other Модуль - это то что можно добавить через layoauts 1 Надіслати Поділитися на інших сайтах More sharing options... vier Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: Если все равно все будут топить за 2.3 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. + 1 Надіслати Поділитися на інших сайтах More sharing options... esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 Мене дуже потішило "зручне рішення" Данили про формування коду доповнення, з якого за результатом формується посилання редагування параметрів модуля... $code = basename($file, '.ocmod.zip'); Тобто файл доповнення тепер не назвеш як хочеш, тепер тільки як треба) А не простіше було брати з того ж install.json? Все інше з нього, а code з імені файлу... феноменально) 3 Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 12 жовтня 2022 Автор Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:34, PaulKravchenko сказал: Мене дуже потішило "зручне рішення" Данили про формування коду доповнення, з якого за результатом формується посилання редагування параметрів модуля... $code = basename($file, '.ocmod.zip'); Тобто файл доповнення тепер не назвеш як хочеш, тепер тільки як треба) А не простіше було брати з того ж install.json? Все інше з нього, а code з імені файлу... феноменально) в 4.0.0.0 була підтримка підпапок, тобто можна було файл назвати наприклад sv2109_event_manager_oc4.0_v1.0.ocmod.zip а вже всередині мати папку sv2109_event_manager (і це буде кодом) з файлом install.json. Але в 4.0.1 це забрали, тепер файл install.json має лажати виключно в корені а назва файлу буде автоматично кодом. 1 Надіслати Поділитися на інших сайтах More sharing options... Etegro Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. 4 Надіслати Поділитися на інших сайтах More sharing options... PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 В 12.10.2022 в 16:42, sv2109 сказав: а назва файлу буде автоматично кодом так це і бісить) мій файл - як хочу називаю, а ядру віддаю папку, прописую код в install.json, якось більш.. ну очевидно мабуть Просто трохи прикурив коли вперше побачив на своєму тестовому модулі коли архів обізвав як хотілось)) 1 Надіслати Поділитися на інших сайтах More sharing options... SergeTkach Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 @sv2109 спасибо за описание граблей! 2 Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 14:28, sv2109 сказал: либо добавить кучу конструкций Скрытый текст private $name_arhive = 'My module'; private $code_event = 'mymodule'; private $code = '0000000000000'; private $mame = 'мой модуль'; private $version = '1.0'; private $author = 'BuslikDrev'; private $link = ''; private $version_oc = 2.3; private $paths = array(); public function __construct($foo) { parent::__construct($foo); if (method_exists($this->language, 'set')) { $this->language->set('mymodule_version', $this->version); } if (version_compare(VERSION, '4.0.0', '>=')) { $this->version_oc = 4; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/mymodule/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_path' => 'model_extension_mymodule_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/mymodule/admin/view/template/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '|' ); } elseif (version_compare(VERSION, '3.0.0', '>=')) { $this->version_oc = 3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '/' ); } elseif (version_compare(VERSION, '2.3.0', '>=')) { $this->version_oc = 2.3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'extension/extension', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } else { $this->version_oc = 2; $this->paths = array( 'controller' => array( 'mymodule' => 'module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'extension/module', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'module/mymodule', ), 'model' => array( 'mymodule' => 'module/mymodule', 'mymodule_path' => 'model_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'module/mymodule.tpl', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 $this->url->link учтен? префикс для config ps. Если это расширение, то лучше, мне так кажется, в other Модуль - это то что можно добавить через layoauts 1 Надіслати Поділитися на інших сайтах More sharing options... vier Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: Если все равно все будут топить за 2.3 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. + 1 Надіслати Поділитися на інших сайтах More sharing options... esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
sv2109 Опубліковано: 12 жовтня 2022 Автор Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:34, PaulKravchenko сказал: Мене дуже потішило "зручне рішення" Данили про формування коду доповнення, з якого за результатом формується посилання редагування параметрів модуля... $code = basename($file, '.ocmod.zip'); Тобто файл доповнення тепер не назвеш як хочеш, тепер тільки як треба) А не простіше було брати з того ж install.json? Все інше з нього, а code з імені файлу... феноменально) в 4.0.0.0 була підтримка підпапок, тобто можна було файл назвати наприклад sv2109_event_manager_oc4.0_v1.0.ocmod.zip а вже всередині мати папку sv2109_event_manager (і це буде кодом) з файлом install.json. Але в 4.0.1 це забрали, тепер файл install.json має лажати виключно в корені а назва файлу буде автоматично кодом. 1 Надіслати Поділитися на інших сайтах More sharing options... Etegro Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. 4 Надіслати Поділитися на інших сайтах More sharing options... PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 В 12.10.2022 в 16:42, sv2109 сказав: а назва файлу буде автоматично кодом так це і бісить) мій файл - як хочу називаю, а ядру віддаю папку, прописую код в install.json, якось більш.. ну очевидно мабуть Просто трохи прикурив коли вперше побачив на своєму тестовому модулі коли архів обізвав як хотілось)) 1 Надіслати Поділитися на інших сайтах More sharing options... SergeTkach Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 @sv2109 спасибо за описание граблей! 2 Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 14:28, sv2109 сказал: либо добавить кучу конструкций Скрытый текст private $name_arhive = 'My module'; private $code_event = 'mymodule'; private $code = '0000000000000'; private $mame = 'мой модуль'; private $version = '1.0'; private $author = 'BuslikDrev'; private $link = ''; private $version_oc = 2.3; private $paths = array(); public function __construct($foo) { parent::__construct($foo); if (method_exists($this->language, 'set')) { $this->language->set('mymodule_version', $this->version); } if (version_compare(VERSION, '4.0.0', '>=')) { $this->version_oc = 4; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/mymodule/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_path' => 'model_extension_mymodule_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/mymodule/admin/view/template/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '|' ); } elseif (version_compare(VERSION, '3.0.0', '>=')) { $this->version_oc = 3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '/' ); } elseif (version_compare(VERSION, '2.3.0', '>=')) { $this->version_oc = 2.3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'extension/extension', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } else { $this->version_oc = 2; $this->paths = array( 'controller' => array( 'mymodule' => 'module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'extension/module', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'module/mymodule', ), 'model' => array( 'mymodule' => 'module/mymodule', 'mymodule_path' => 'model_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'module/mymodule.tpl', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 $this->url->link учтен? префикс для config ps. Если это расширение, то лучше, мне так кажется, в other Модуль - это то что можно добавить через layoauts 1 Надіслати Поділитися на інших сайтах More sharing options... vier Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: Если все равно все будут топить за 2.3 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. + 1 Надіслати Поділитися на інших сайтах More sharing options... esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Etegro Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. 4 Надіслати Поділитися на інших сайтах More sharing options...
PaulKravchenko Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 В 12.10.2022 в 16:42, sv2109 сказав: а назва файлу буде автоматично кодом так це і бісить) мій файл - як хочу називаю, а ядру віддаю папку, прописую код в install.json, якось більш.. ну очевидно мабуть Просто трохи прикурив коли вперше побачив на своєму тестовому модулі коли архів обізвав як хотілось)) 1 Надіслати Поділитися на інших сайтах More sharing options... SergeTkach Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 @sv2109 спасибо за описание граблей! 2 Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 14:28, sv2109 сказал: либо добавить кучу конструкций Скрытый текст private $name_arhive = 'My module'; private $code_event = 'mymodule'; private $code = '0000000000000'; private $mame = 'мой модуль'; private $version = '1.0'; private $author = 'BuslikDrev'; private $link = ''; private $version_oc = 2.3; private $paths = array(); public function __construct($foo) { parent::__construct($foo); if (method_exists($this->language, 'set')) { $this->language->set('mymodule_version', $this->version); } if (version_compare(VERSION, '4.0.0', '>=')) { $this->version_oc = 4; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/mymodule/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_path' => 'model_extension_mymodule_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/mymodule/admin/view/template/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '|' ); } elseif (version_compare(VERSION, '3.0.0', '>=')) { $this->version_oc = 3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '/' ); } elseif (version_compare(VERSION, '2.3.0', '>=')) { $this->version_oc = 2.3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'extension/extension', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } else { $this->version_oc = 2; $this->paths = array( 'controller' => array( 'mymodule' => 'module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'extension/module', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'module/mymodule', ), 'model' => array( 'mymodule' => 'module/mymodule', 'mymodule_path' => 'model_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'module/mymodule.tpl', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 $this->url->link учтен? префикс для config ps. Если это расширение, то лучше, мне так кажется, в other Модуль - это то что можно добавить через layoauts 1 Надіслати Поділитися на інших сайтах More sharing options... vier Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: Если все равно все будут топить за 2.3 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. + 1 Надіслати Поділитися на інших сайтах More sharing options... esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
SergeTkach Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 @sv2109 спасибо за описание граблей! 2 Надіслати Поділитися на інших сайтах More sharing options... buslikdrev Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 14:28, sv2109 сказал: либо добавить кучу конструкций Скрытый текст private $name_arhive = 'My module'; private $code_event = 'mymodule'; private $code = '0000000000000'; private $mame = 'мой модуль'; private $version = '1.0'; private $author = 'BuslikDrev'; private $link = ''; private $version_oc = 2.3; private $paths = array(); public function __construct($foo) { parent::__construct($foo); if (method_exists($this->language, 'set')) { $this->language->set('mymodule_version', $this->version); } if (version_compare(VERSION, '4.0.0', '>=')) { $this->version_oc = 4; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/mymodule/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_path' => 'model_extension_mymodule_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/mymodule/admin/view/template/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '|' ); } elseif (version_compare(VERSION, '3.0.0', '>=')) { $this->version_oc = 3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '/' ); } elseif (version_compare(VERSION, '2.3.0', '>=')) { $this->version_oc = 2.3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'extension/extension', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } else { $this->version_oc = 2; $this->paths = array( 'controller' => array( 'mymodule' => 'module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'extension/module', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'module/mymodule', ), 'model' => array( 'mymodule' => 'module/mymodule', 'mymodule_path' => 'model_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'module/mymodule.tpl', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 $this->url->link учтен? префикс для config ps. Если это расширение, то лучше, мне так кажется, в other Модуль - это то что можно добавить через layoauts 1 Надіслати Поділитися на інших сайтах More sharing options... vier Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: Если все равно все будут топить за 2.3 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. + 1 Надіслати Поділитися на інших сайтах More sharing options... esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
buslikdrev Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 14:28, sv2109 сказал: либо добавить кучу конструкций Скрытый текст private $name_arhive = 'My module'; private $code_event = 'mymodule'; private $code = '0000000000000'; private $mame = 'мой модуль'; private $version = '1.0'; private $author = 'BuslikDrev'; private $link = ''; private $version_oc = 2.3; private $paths = array(); public function __construct($foo) { parent::__construct($foo); if (method_exists($this->language, 'set')) { $this->language->set('mymodule_version', $this->version); } if (version_compare(VERSION, '4.0.0', '>=')) { $this->version_oc = 4; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/mymodule/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/mymodule/module/mymodule', 'mymodule_path' => 'model_extension_mymodule_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/mymodule/admin/view/template/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '|' ); } elseif (version_compare(VERSION, '3.0.0', '>=')) { $this->version_oc = 3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'marketplace/extension', 'modification' => 'marketplace/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'setting/module', 'module_path' => 'model_setting_module', 'extension' => 'setting/extension', 'extension_path' => 'model_setting_extension', 'modification' => 'setting/modification', 'modification_path' => 'model_setting_modification', 'event' => 'setting/event', 'event_path' => 'model_setting_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'user_token=' . $this->session->data['user_token'], 'slash' => '/' ); } elseif (version_compare(VERSION, '2.3.0', '>=')) { $this->version_oc = 2.3; $this->paths = array( 'controller' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/extension/module', 'extension' => 'extension/extension', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'extension/module/mymodule', ), 'model' => array( 'mymodule' => 'extension/module/mymodule', 'mymodule_path' => 'model_extension_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'extension/module/mymodule', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } else { $this->version_oc = 2; $this->paths = array( 'controller' => array( 'mymodule' => 'module/mymodule', 'mymodule_event' => 'extension/mymodule/event/mymodule', 'module' => 'extension/module', 'extension' => 'extension/module', 'modification' => 'extension/modification', ), 'language' => array( 'mymodule' => 'module/mymodule', ), 'model' => array( 'mymodule' => 'module/mymodule', 'mymodule_path' => 'model_module_mymodule', 'module' => 'extension/module', 'module_path' => 'model_extension_module', 'extension' => 'extension/extension', 'extension_path' => 'model_extension_extension', 'modification' => 'extension/modification', 'modification_path' => 'model_extension_modification', 'event' => 'extension/event', 'event_path' => 'model_extension_event', ), 'view' => array( 'mymodule' => 'module/mymodule.tpl', ), 'token' => 'token=' . $this->session->data['token'], 'slash' => '/' ); } } Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 $this->url->link учтен? префикс для config ps. Если это расширение, то лучше, мне так кажется, в other Модуль - это то что можно добавить через layoauts 1 Надіслати Поділитися на інших сайтах More sharing options... vier Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: Если все равно все будут топить за 2.3 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. + 1 Надіслати Поділитися на інших сайтах More sharing options... esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
chukcha Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 $this->url->link учтен? префикс для config ps. Если это расширение, то лучше, мне так кажется, в other Модуль - это то что можно добавить через layoauts 1 Надіслати Поділитися на інших сайтах More sharing options... vier Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: Если все равно все будут топить за 2.3 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. + 1 Надіслати Поділитися на інших сайтах More sharing options... esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
vier Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:02, Bn174uk сказал: Если все равно все будут топить за 2.3 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. + 1 Надіслати Поділитися на інших сайтах More sharing options... esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
esculapra Опубліковано: 12 жовтня 2022 Share Опубліковано: 12 жовтня 2022 12.10.2022 в 16:43, Etegro сказал: 2.3 по моему мнению самая адекватная, без этих ненужных твигов, редакторов этих самых твигов и прочей гадости. Я тоже согласен, хотя и 3.0 нормальная. Выше нет смысла лезть. 12.10.2022 в 16:28, sv2109 сказал: вопрос не в том, что каждая новая версия отличается, это понятно, ведь если бы не отличалась то ее бы не было.. Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр. Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
sv2109 Опубліковано: 13 жовтня 2022 Автор Share Опубліковано: 13 жовтня 2022 13.10.2022 в 00:00, esculapra сказал: Новые версии, я так считаю, должны поддерживать низшие. У людей куча купленных модулей, которые не работают на высших версиях. Если суть новшества в изменении какого-то пути - это тупость! - новая версия должна дать улучшения, как-то, безопасность, упрощение работы и пр это идеальный вариант, но почти нереальный, не может версия 4 поддерживать модуль написанный под напр. 1.5 когда еще не было ни твига ни бутстрапа ни событий + файловая структура была совсем другой итд. Или если тянуть в версию 4 совместимость со всеми предыдущими то код движка будет настолько громоздким и запутанным что это будет наверное еще хуже, чем то что есть сейчас.. да и работать все это будет в разы медленнее из-за огромной кучи очень старого кода. Поэтому у других движках есть правило - совместимыми должны быть модули на уровне главной, мажорной версии движка, напр. если модуль написан для версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Все большие изменения, которые ломают совместимость при этом накапливаются, обкатываются на каких-то дев. версиях и добавляются уже в версию 3.0 (весь старый и ненужный код при этом выбрасывается за ненадобностью), после чего ничего нового и глобального уже не добавляется до версии 4 и так далее. И это очень правильный подход. Разработчик написал модуль для 2.0 и все, он уверен на 100% что этот модуль будет работать на всех подверсиях двойки сколько бы их не было. И пользователь уверен что если он купит модуль под 2.0 то сможет им пользоваться даже на версии 2.99 если она когда-то выйдет. Ну вот почему же так не сделать?! Все же от этого только выиграют и разработчики и пользователи и даже сам движок. А не так что модуль написанный для 4.0.0.0 уже не работает на 4.0.1.0 и это даже не минорная версия, потому что минорная версия это 4.1, а это по логике вообще патч версия для очень мелких изменений и исправлений различных багов, которая по всей логике вообще никак не должна влиять на совместимость.. 1 Надіслати Поділитися на інших сайтах More sharing options... markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV
markimax Опубліковано: 13 жовтня 2022 Share Опубліковано: 13 жовтня 2022 В 13.10.2022 в 12:13, sv2109 сказав: версии движка 2.0 то он должен работать и на 2.1.х.х и на 2.2.х.х и на 2.3.х.х и на 2.х.х.х. Тоді в opencart була б зараз версія 7 ))) Але я згоден то не діло коли навіть не мінорна версія (*.0.0.*) не сумісна з минулою. Про ocmod я краще промовчу... "ну навіщо!". Якби подіями можна було змінювати всю логіку, то ще можна було пережити. Але ж при такій архітектурі прибирати ocmod це божевілля (ось як розробникам змінювати наприклад запити в моделях... риторичне питання) Надіслати Поділитися на інших сайтах More sharing options... sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Допомога програмістам та розробникам Разработка модулей под OpenCart 4 или почему Даниель так ненавидит разработчиков?
sv2109 Опубліковано: 14 жовтня 2022 Автор Share Опубліковано: 14 жовтня 2022 Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. 1 Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
chukcha Опубліковано: 14 жовтня 2022 Share Опубліковано: 14 жовтня 2022 14.10.2022 в 11:34, sv2109 сказал: Короче, создал только что новый issue в оф. репозиторииhttps://github.com/opencart/opencart/issues/11800 если не сложно - поддержите. Сильно сомневаюсь что это что-то изменить, вероятно Даниель напишет что все разработчики ламеры ничего не понимающие в программировании и только он один самый лучший и все делает правильно и.. закроет это обращение, но я хотя бы буду знать что попытался. наивный. Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 8
Recommended Posts