Архів по місяцям: Лютий 2018

  1. Події та слухачі у Magento 2

    Уявіть, що ви поставили варити макарони і сіли грати Dota 2, чи будь-яку іншу гру, а одним вухом слухаєте чи не збігає "страва" - у такому випадку ви - слухач. Коли макарони починають збігати - викликається подія "макарони_почали_збігати", яка заставляє вас (слухача) підірватись з місця і помчати на кухню (виконати дію, алгоритм).

    У Magento 2, як і в реальному житті, теж існують слухачі та події, які реалізовані на основі шаблону "Публікація-підписка" (Publish–subscribe pattern). Ми вже описували плагіни (plugins) у Magento 2, які дозволяють розширювати та змінювати функціонал магазину. Розглянемо, як це можна зробити за допомогою подій та слухачів.

    Події (Events)

    Події викликаються модулями Magento 2, коли та чи інша дія відбулася, або повинна відбутись. Мадженто має багато власних подій, а також дозволяє викликати власні.

    Для виклику події використовуйте метод dispatch класу \Magento\Framework\Event\ Manager. 

    Дізнатись більше »
  2. Швидке налаштування віртуального хоста LAMP

    Для того щоб мати змогу швидко налаштовувати відруальні хости (домени) локального веб-сервера на базі змірки Linux+Apache+MySql+PHP, встановіть Virtualhost Manage Script.

    Відкрийте CLI (командний рядок, термінал). Виконайте команди:

    cd /usr/local/bin/
    sudo wget https://raw.githubusercontent.com/RoverWire/virtualhost/master/virtualhost.sh
    sudo chmod +x virtualhost.sh
    sudo ln -s virtualhost.sh virtualhost

    Дізнатись більше »
  3. Переписування та розширення JS файлів у Magento 2

    Часто потрібно змінити логіку JavaScript коду, який знаходиться у .js файлі. Найпростіший спосіб - переписати js-файл, за допомогою теми. Як переписувати файли view описано у нашому блозі. Це швидкий, але не елегантний спосіб.

    Для зміни одного чи декількох методів js-файлу, використовуйте змішувачі (Mixins), які доступні у RequireJS.

    Щоб розширити файл:

    app/code/VendorName/ModuleName/view/%area%/web/js/folder1/folder2/somefile.js

    Дізнатись більше »
^Top
Chat