Вопросы с тегом «best-practice»

Обозначает вопросы, связанные с лучшими практиками в Magento.

143
Как написать собственное расширение?

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

134
Magento 2: использовать или не использовать ObjectManager напрямую?

Итак, вчера у нас была большая беседа с другими людьми из сообщества Magento относительно прямого использования ObjectManagerв классах / шаблонах . Мне уже известны причины, по которым мы не должны использовать ObjectManager напрямую, цитируя Алана Кента : Есть несколько причин. Код будет работать,...

76
Когда мы должны использовать репозиторий и фабрику в Magento 2?

Я прошел через несколько уроков в Magento 2, и это меня немного смущает. Я вижу, что есть два основных способа, которыми мы можем читать / писать бизнес-объекты: Получить данные Использование фабричного подхода $object = $this->myFactory->create(); $object->load($myId); Использование...

53
Modern Magento 1.X Рабочий процесс и инструменты разработки

Я новичок в Magento Development (CE 1.6) и все еще пытаюсь определить свой рабочий процесс. В настоящее время я работаю на Mac OSX 10.8 с Netbeans 7.3, но обнаружил, что Netbeans работает медленно и зависает на мне. Я стремлюсь переключиться на Sublime Text 2, чтобы быстро просматривать /...

48
Magento 2 как безголовое решение

Я хочу знать, есть ли лучшие методы использования Magento 2 в качестве решения для электронной коммерции без головы . Типичная электронная коммерция в 2017 году - иметь многоканальное решение, которое включает Электронная коммерция CMS Multiplatform Интеграция системы уровня (ERP, ...) Я хочу...

45
Какой предпочтительный способ создания исключений в Magento?

Все следующие методы используются в ядре Magento, так какой из них является предпочтительным (или новейшим «лучшим методом»)? Mage::throwException('Some Message')- 732 использования throw new Exception('Some Message')- 419 использований throw Mage::exception('Vendor_Module', 'Some Message')- 94...

27
Возврат $ это после наблюдателя

В интернете и в сторонних модулях я вижу некоторую противоречивую информацию - является ли это обязательным требованием или наилучшей практикой возвращаться $thisв конце метода наблюдателя? Например: MyCompany_Module_Model_Observer.php public function salesOrderSaveAfter($observer){ //do stuff...

27
Эффективно получить URL продукта от id

Каков наиболее эффективный способ получения URL-адреса продукта только по его идентификатору? В некоторых местах нашего кода есть такие вещи, как, например Mage::getModel('catalog/product')->load($id)->getProductUrl(), чтобы получить URL-адрес продукта, учитывая количество событий и т. Д.,...

21
Magento 2 - хорошая практика использовать / избегать магических добытчиков?

Сборщики магии на Varien_Object(M1) и DataObject(M2) являются обычной практикой, но с Magento 2 кажется неправильным использовать его. Хорошо: легко читать / писать Плохо Это вызывает проблемы при использовании цифр в ключах (см .: Magento 2: другой способ получить поле коллекции или атрибут Get...

19
Лучшие практики Magento 2 DI

Допустим, я создаю расширение для Magento 2, которое ... ну ... не важно. Допустим, это супер круто. Но я хочу убедиться, что это сборка с использованием надлежащих стандартов, чтобы другие разработчики могли расширять ее. Когда я должен использовать DI в комбинации с интерфейсами, а когда нет?...

16
Каковы лучшие практики для установки сторонних расширений в Magento 2?

Работая над клиентским проектом для Magento 2, я обнаружил множество способов загрузки и отслеживания сторонних расширений. Если предположить, что мы используем метод установки интегратора (composer!), Каковы лучшие практики для управления сторонними расширениями? До сих пор у каждого расширения,...

15
Лучшая практика Magento 2 для локаций и имен классов

В Magento 1нас привыкли размещать наши классы в этих каталогах блок помощник модель Ресурс и используйте простое имя класса без каких-либо заглавных букв в середине имени. Если мы посмотрим на некоторые случаи в Magento 2 Core Помощники Расположение : - \Foo\Bar\Helper Имя : - *.php Примеры : -...

15
Magento: самый быстрый способ обновить атрибут продукта

Я ищу самый быстрый и надежный способ массового обновления атрибутов. Ниже приведены методы, которые мне известны, но я не знаю, с какими из них я должен идти. $store_id = 0; Mage::getSingleton('catalog/product_action')->updateAttributes( array($product_id), array('attribute_code' =>...

15
Как лучше всего использовать Magento 2 для создания отношений «многие ко многим»?

Я осмотрел ядро ​​и увидел несколько примеров множества отношений между моделями, но я не вижу однозначного ответа на этот вопрос. В качестве примера, скажем, мы создаем новую модель, и мы хотим иметь связь «многие ко многим» с существующей таблицей продуктов. Итак, у нас есть наша новая Модель -...

15
Лучший способ загрузить пользовательскую модель в Magento 2

Поскольку мне было трудно найти правильный путь, ниже вы могли найти лучшую практику, которую я сделал своей. Наслаждайтесь, поправьте мой английский, если это необходимо, и скажите, что я ошибаюсь, если это так :) Изменить: ... и я узнал, что я был неправ в некоторых аспектах. Поэтому я обновил...

15
Как работать с config.php в Magento 2

Прежде всего, возможно, это уже ответ на вопрос, но я ничего не нашел по этому вопросу. Это не проблема, а вопрос о лучшем способе управления файлом config.phpв Magento 2. На самом деле наша config.phpверсия не является версионной (по умолчанию в .gitignoreфайле M2 ), поэтому ее нет в нашем...

14
Magento2: лучшая практика для модификации CSS-файлов

Я хочу изменить файл CSS pub/static/frontend/Magento/luma/en_US/css/styles-l.css. Изначально этот файл отсутствует в папке pub / static и находится в vendor/magento/theme-frontend-blank/web/css/styles-l.less (it's styles-l.less) Когда я использую статическое содержимое php bin/magento...

14
Хорошо ли создавать экземпляр класса getModel в шаблонах phtml?

Это вопрос относительно хорошей практики программирования в Magento. Мне нужно показать (в списке товаров категории) товар с сопутствующими товарами в виде миниатюр. Поэтому я отредактировал mypackage/mytheme/template/catalog/product/list.phtmlчто-то вроде этого <?php...

13
Есть ли веская причина помещать один и тот же код в блоки try и catch?

В файле: app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Datetime.phpвнутри render()метода кажется, что один и тот же код выполняется в блоках try и catch. Исключение не обрабатывается вообще. Мне любопытно узнать, каковы причины (если таковые имеются) для написания такого кода: try...