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

Останні пости

Авраам Лінкольн

Ми не допоможемо людям, роблячи за них те, що вони могли б зробити самі Авраам… Читати далі

15/03/2024

Як зберігати каву, щоб вона не втрачала смаку і аромату

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

11/03/2024

Габрієль Гарсія Маркес

Вік — це не те, скільки тобі років, а те, — як ти їх відчуваєш… Читати далі

10/03/2024

Короткий опис ліцензій з відкритим вихідним кодом

Якщо ви створюєте програмне забезпечення, яким хочете поділитися, або використовуєте програмний продукт, який хочете модифікувати,… Читати далі

09/03/2024

Ніл Ґейман

Люди думають, що будуть щасливі, якщо переїдуть в інше місце, а потім виявляється: куди б… Читати далі

20/02/2024

Уроки JavaScript — як почати працювати з об’єктами

Об’єкти є однією з найважливіших і найпотужніших функцій JavaScript, і в багатьох вбудованих функціях об’єкти… Читати далі

17/02/2024