Ого, я помню время, когда я только начинал. Magento просто выглядел как абсолютный монстр. К сожалению, нужно просто поочередно взяться за один небольшой укус.
Перво-наперво. Поскольку вы прикасаетесь к Magento, вы должны начать использовать PHP, как и предполагалось. Под этим я подразумеваю, что вам также придется частично стать бэкэнд-разработчиком. Так! Обязательно сначала настройте свою среду. Вам понадобится инстанс magento2, установленный на вашем компьютере, есть много обучающих программ о том, как это сделать. Новейшая технология - это контейнеры docker, вы можете попробовать их, но вы также можете использовать любой другой способ, например, Vagrant или даже установить его на свою ОС. После того, как Magento запущен и работает локально, вы можете перейти к следующему шагу.
Теперь вам нужна IDE, способ работы с PHP с возможностью нажимать на функции и следовать за ними в классы, где они реализованы. Как только вы узнаете, как это сделать, вы узнаете, что, например, класс Product должен предлагать с точки зрения атрибутов.
В-третьих, вы должны получить настройки отладчика. Xdebug - распространенный способ сделать это. Ваша IDE также должна помочь вам с этой задачей. Убедитесь, что Google xdebugging и настройки. Это абсолютно необходимо! После установки xdebugger вы можете увидеть все переменные, содержащиеся во входящих классах, таких как Product. Если вы видите переменные, вы можете вывести их на внешний интерфейс.
Наконец, кратко о методах волхвов c.
->getName()
и ->getData('name')
can быть эквивалентным. То есть, под капотом у Magento есть этот класс DataObject. То, как классы содержат данные, хранится в массиве, называемом данными. ->getData
просто обращается к этому массиву с помощью указанного c ключа. В этом случае ключ «имя». В большинстве случаев вы заметите, что в классе, который вы просматриваете, нет функции -> getName (), если это так, то методы magi c (google php magi c методы ) запускаются и, говоря: -> getName () magento просто делает это $ class-> getData ('name'). Таким способом вы также можете загрузить что угодно из массива данных, например, вы можете сделать ->getMyCustomAttribute
, и он попытается выполнить -> getData ('my_custom_attribute'). При условии, что атрибут существует в массиве данных. В любом случае, Xdebugger должен помочь вам выяснить, что находится в этом массиве и что вы можете вызвать.