Контрольные заметки для сертификационного экзамена Мадженто-разработчика – ч.10

Расширенные возможности – доля в экзамене: 13%.

 

Виджеты

Виджеты – это настраиваемые блоки интерфейса, которые могут быть включены и настроены в блоках или на CMS страницах. Архитектура виджетов в основном руководствуется моделью Mage_Widget_Model_Widget, тогда как блоки интерфейса, используемые виджетами, реализуют интерфейс Mage_Widget_Block_Interface.

 

Виджеты определяются в файле конфигурации widget.xml модуля, используя следующий синтаксис:

<widgets>
 <{widget_identifier} type="{grouped_class_name}" translate="{fields}" module="{module_name}">
  <name>{widget_name}</name>
  <description>{widget_description}</description>
  <parameters>
   <{parameter_identifier} type="{type}" translate="{fields}">
    <visible>{0|1}</visible>
    <required>{0|1}</required>
    <label>{parameter_label}</label>
    <type>{parameter type}</type>
    <value>{value}</value>
    <values>{possible_values}</values>
    <helper_block>{helper_block_definition}</helper_block>
    <sort_order>{order}</sort_order>
   </{parameter_identifier}>
   ...
  </parameters>
 </{widget_identifier}>
</widgets>

 

В зависимости от типа, параметры виджетов могут иметь одно значение, выбор из нескольких значений, или могут включать сложные процедуры, например, выбор галереи изображений, чтобы определить их значение, управляемое хелпер блоком.

 

API

Magento содержит встроенные API SOAP, XML-RPC и REST для дистанционного управления магазином.

API SOAP является типичным и распространенным. WSDL для него находится в:

  • {base_url}/api/?wsdl
  • {base_url}/api/v2.soap?wsdl

 

Ресурсы API определяются в файлах конфигурации api.xml или api2.xml. В этих файлах для каждого ресурса определено модель для обработки вызовов. Методы API публикуются методом определения их в файлах конфигурации wsdl.xml или wsdl2.xml. Методы размечают карту методов на ресурсных моделях. Ресурсы API включают ACL, чтобы ограничивать API методы для определенных пользователей/ролей.

Файлы конфигурации wsdl.xml загружаются с помощью модели Mage_Core_Model_Config. Она также отвечает за загрузку конфигурации модуля Magento, поэтому это работает точно так же, как загрузка config.xml, если речь идет о расширении и переопределении конфигурации API метода.

Методы API определяются API моделями, которые инстанциируются с помощью фабричных методов Magento класса. Поэтому они могут быть перезаписаны, как обычные модели Magento, для переопределения API методов. Дополнительные методы могут быть добавлены к перезаписанным классам или с помощью добавления новых API моделей к wsdl.xml.

 

API против API2

Разница между двумя версиями SOAP API заключается в том, что в версии 1 все операции выполняются, передавая их методам call() и multicall(), например:

<?php $client->call($session, "sales_order.list"); ?>

 

Между тем в версии 2 каждая операция имеет свой собственный метод, например:

<?php $client->salesOrderList(); ?>

 

Внутренний обработчик API версии 2 использует ту же конфигурацию API метода, что и версия 1. При вызове метода API 2 версии, например, catalogProductCreate(), обработчик ищет префикс, который соответствует методу в

<v2>
  <resources_function_prefix>
  </resources_function_prefix>
</v2>

разделе конфигурации, например catalogProduct для поиска ресурса метода и вызывает метод {resource}.{method_suffix} API 1 версии.

 

Перевод: SebWeo

 

This post was last modified on 09/02/2024 21:29

Последние посты

Конфуций

Когда вам покажется, что цель недостижима, не изменяйте цель — изменяйте свой план действий Конфуций…

12/05/2024

Чарлз Дарвин

Выживает не самый сильный и не самый умный, а тот, кто лучше всех приспосабливается к…

11/05/2024

Что такое тег canvas в HTML5 и зачем он нужен?

Элемент <canvas> появился только в HTML5 и используется для динамического рисования графики на веб-странице с…

10/05/2024

Ден Браун

Возможно все, — для невозможного просто требуется больше времени Ден Браун  

09/05/2024

Что включает в себя очистка ноутбука?

Ноутбук – это не только удобный и функциональный гаджет, но и довольно деликатное устройство, требующее…

08/05/2024

Аль Пачино

Никогда никому ничего не объясняйте. Все равно каждый поймет так, как ему выгодно Аль Пачино…

07/05/2024