Категории: Magento - как сделать

Контрольные заметки для сертификационного экзамена Мадженто-разработчика – ч.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

 

Share

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

Ричард Бах

Ни одно желание не дается тебе отдельно от силы, позволяющей его осуществить. Хотя, возможно, для… Читать далее

16/04/2024

Стивен Кинг

Жизнь – это непрерывный опыт, и даже самые плохие моменты занимают свое место в пазле… Читать далее

15/04/2024

неизвестный автор

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

14/04/2024

Наполеон Хилл

Что разум человека может постигнуть и во что он может поверить, того он способен достичь… Читать далее

13/04/2024

Дейл Карнеги

Веди себя так, будто ты уже счастлив, и ты действительно станешь счастливее Дейл Карнеги   Читать далее

12/04/2024

Борьба с курением на ярких примерах социальной рекламы

Каждый год множество людей преждевременно умирает от сердечно-сосудистых заболеваний, рака, диабета, хронических заболеваний органов дыхания… Читать далее

11/04/2024