Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Dprojectdeveloper

Новичок
  
  • Публикаций

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

  • Посещение

1 подписчик

Достижения Dprojectdeveloper

Rookie

Rookie (2/14)

  • Conversation Starter
  • First Post
  • Week One Done
  • One Month Later
  • One Year In

Последние медали

0

Репутация

  1. Смотрел я этот движок мультимагазин там сделано очень просто. Указываем в настройках url нового магазина и если URL чувака совпадает с URL который указан в настройках, то перезаписываем все настройки :) в том числе и тему. Т.е можно применить новую тему :) Так же в некоторых таблицах БД типо категории продукты насколько я помню указывается к какому магазину они относятся. Вопрос с robots решается очень просто для мультимагазинности :) конечно если это для вас имеет значение. Создаем файл robots.php и в htaccess пишем RewriteRule ^robots.txt$ /robots.php файл robots <?php header('Content-type': text/plant); \\это что бы все знали что это текстовый файл ну и тут вызываем соответствующую реализацию класса. Но так не правельно с точки зрения архитектуры у нас же MVC якобы и мы не должны отходить от ее рамок вообщем заместо robots.php в htaccess нужно указать контроллер и действие которое эту хрень будет обрабатывать. Таким способом так же можно запретить ссылки на товары которые дублируются в категориях, но я предпочитаю другой способ что бы все ссылки были не название_категории/название_продукта. а product/название_продукта и category/название_категории это исключает дублирование, но тогда нужно обратиться к механизму сессий что бы понимать с какой мы категорией работаем это для древовидного меню и хлебной крошки, а если категории нет то выводить первую по умолчанию. ?>
  2. А лутше всего MVC реализованно в asp.NET MVC самый лутший framework
  3. В этом OpenCart даже MVC не правильно реализована о чем тут можно говорить... Это не фига не MVC это какой то непонятный и тупой гебрит. Joomla и то в плане архитектуры грамотнее написана, прошу заметить сама Joomla а не те компоненты которые к ней представляются они написаны очень тупо... Вопрос с урлми должен решаться очень просто в методе диспетчер должна подгружаться карта доступных урлов и уже объект диспетчер должен генерировать в соответствии с этой картой определенное действие. И представление должно зависить от модели предметной области, в модели предметной области должны быть наблюдатели патерн Observer которые отслеживают изменения и оповещают о них соответствующее представление. В моделях предметной области должна содержаться вся бизнес логика. А контроллер он всеголишь тонкий клиент он должен просто пинать соответствующее модели и представления.....
  4. Вообщем я отказался от использования данной CMS системы по следующим причинам: 1) Из за неграмотной архитектуры. 2) Из за кривого кода в некоторых модулях 3) Из тупой инициализации 4) Толстых тупых и уродливых контроллеров (ТТУК) ... Сейчас пишу свою систему на базе MVC
  5. Можно сделать просто, поставив фильтр, но так же можно поставить древовидное меню что для вас лутше?
  6. Я еще не успел закончить, сейчас таблицу маршрутизации написал, ну и ЧПУ. Сейчас на сайт для сайта применю и выложу demo версию...
  7. Кто нить может объяснить зачем информацию о выбраном языке и о валютах одновременно записывать в сессию и в куки файлы??? Неужели недостаточно записать либо в сессию либо в cookie? public function set($currency) { $this->code = $currency; if ((!isset($this->session->data['currency'])) || ($this->session->data['currency'] != $currency)) { $this->session->data['currency'] = $currency; } if ((!isset($this->request->cookie['currency'])) || ($this->request->cookie['currency'] != $currency)) { setcookie('currency', $currency, time() + 60 * 60 * 24 * 30, '/', $this->request->server['HTTP_HOST']); } }
  8. Стоп! А зачем размеры товара убирать? Бррр, ну не нужна опция, не заполняй! А Налоги? Может в России, это не так актуально, но многие используют магазины для разных целей, к тому же налог можно отключить! По поводу быстрого оформления, вопрос спорный, 3 шага наверное много, но 2 самый раз, а лучше всего реализовать, это на Ajax. Когда следующий шаг появляется, после предыдущего на одной странице без перезагруза, так сделан к примеру cs-cart. Люди в Раше очень тупые и имеют рабскую психологию, поэтому не факт, что тому кто хочет видеть все на одной странице, другому это подойдет! У нас нужно каждый шаг рассусоливать! Иногда впечатление, что клиента по дулом пистолета или электрошоком заказ заставляют сделать и если вот он сейчас кнопку нажмет, его наверное кончат или компютер взорвется и оторвет ему бошку!!! :mrgreen: Но, это так, лирическое отступление... И не забывать сохранять модульность и совместимость, а то после такого апдейта, по ходу назад уже не вернешься! По бреду, не знаю, не знаю, но делает этот движок почти один человек, поэтому требовать от него отсутствие ошибок или понимания его логики, сложно! Напиши ему, будет время ответит! А еще лучше, сделать все тоже самое самому! Чтобы уже другие искали твои ошибки и критиковали, какой это бред!!! ;) Ты имеешь ввиду Российскую сборку делает один человек или то что сам проект http://www.opencart.com/ написал один человек? Удаляю что бы лишние библиотеки не загружать так как мне этого не нужно. Модули добавлять можно будет но сам движок его архитектуру сохранить уже не возможно, так как там есть недоработки...
  9. Я уже 20% этого интернет магазина переписал полностью, всякий ненужный функционал вообще убрал налоги размеры товара и т д, методы оплаты убрал методы доставки сейчас делаю быстрое оформление заказа что бы на одной страницы можно было все оформить... Зачем клиенту делать 3 клика для оформления заказа это бред пролный должно все в один клик оформляться что бы клиент не ушел из магазина....
  10. foreach ($parts as $part) { $path .= $part; if (is_dir(DIR_APPLICATION . 'controller/' . $path)) { $path .= '/'; array_shift($parts); continue; } if (is_file(DIR_APPLICATION . 'controller/' . str_replace('../', '', $path) . '.php')) { $this->file = DIR_APPLICATION . 'controller/' . str_replace('../', '', $path) . '.php'; $this->class = 'Controller' . preg_replace('/[^a-zA-Z0-9]/', '', $path); array_shift($parts); break; } if ($args) { $this->args = $args; } } Кто этот код написал такой бред... В этом коде не при каких условиях мы не сможем передать аргументы методу потому что если якобы существует контроллер мы просто выходим из цикла и все аргументы нужно вынести из цикла....
  11. Как думаете есть ли смысл для админки и для пользовательской части создавать 2 почти одинаковые входные точки? Или же лутше ограничиться одной что даст общий доступ ко всем моделям сайта и представлениям???
  12. Не понимаю почему используется для получения списка модулей модель checkout/extension ??? Причем сдесь checkout? Не логично получается что папки для моделей оформления заказа, есть возможность получения информации о модулях... Поидее файл extenstion.php логичней переместить либо в директорию /model либо /model/modules но не как не checkout/
  13. Так же не могу понять смысл в классе Action в конструкторе вот этой строчки кода str_replace('../', '', $route). В итоге что получается мы можем обратиться к контроллеру http://demo.myopencart.ru/index.php?rou ... ry&path=20 не проще ли написать регулярное выражение на допустимые символы если нет допустимых символов то кидаем 404 ошибку, а так куча дублированного контента хотя о дублированном контенте здесь вообще отдельная тема
  14. Начал изучать OpenCart архитектуру. Нашел несколько неточностей. Не вижу смысла в классе Loader в методах config language и database. Например для загрузки языкового файла из контроллера можно осуществить двумя способами $this->language->load('имя файла языка'); а так же $this->load->language('имя языкового файла'); смысл во втором когда есть первый. Так же не могу понять почему helper не заносится в объект registery, а вот модели заносятся не логично как то, тоже самое с библиотеками они тоже не заносятся в объект registery после загрузки. Так же не могу понять почему мы например объект Action тоже не заносим в объект Registery. Я сейчас составляю UML этой CMS, думаю еще возникнут вопросы спрошу здесь.... Хочу написать хороший интернет магазин на ней в целом CMS очень даже не чего... А так же пользовательский обработчик ошибок из index.php логично для него выделить отдельный класс и сделать список вызовов для отладочной информации, а еще лутше еще распечатка класса где произошла ошибка.
×
×
  • Создать...

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

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