Какие интересные модули я должен разработать для Magento для обучения?


Уже некоторое время я изучаю Magento. Я сделал довольно много модулей, но я все еще думаю, что мне нужно немного больше тренироваться, но я не могу придумать интересный модуль, который можно было бы сделать строго для работы с как можно большим количеством вещей.

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

Итак, может ли кто-нибудь предложить модуль, который требует, чтобы я изучал вещи, которых я еще не касался, или интересные способы думаешь?

Этот вопрос может не содержать 100 % формы ответа на вопрос/ответ, необходимой для этого сайта, но я надеюсь, что смогу получить некоторые предложения

Спасибо.

PS: Все строго в образовательных целях, я хочу изучить все входы и выходы Magento.

Author: pzirkind, 2013-01-31

4 answers

При изучении Magento есть несколько этапов:

Новичок

На этом этапе вы пытаетесь изучить структуру файла, класса и компонента Magento.

К ним относятся:

  • XML

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

  • Блоки

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

  • Модели

    Здесь вы узнаете, как Magento получает доступ к данным из базы данных и как управлять ими различными способами, например, получая список клиентов в алфавитном порядке.

  • Помощники

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

  • Контроллеры

    Здесь вы научитесь создавать пользовательские URL-адреса с пользовательской функциональностью, например, создавать страницу, на которой клиенты могут проверить свой "статус гарантии".

Промежуточный

На этом этапе вы пытаетесь узнать о различных частях Magento.

Некоторые из них:

  • Продукт

    Здесь вы пытаетесь понять различные части продукта и его атрибуты.

    Вот некоторые примеры:

    1) Получение и установка значений атрибутов продуктов

    2) Получение и установка значений для выбранных параметров товаров в корзине

  • Заказчик

    1) Получение и изменение данных о клиентах

    2) Отображение различных представлений для конкретных пользователей (например, для отдела продаж)

  • Заказы на продажу

    1) Получение всех продуктов из заказа и их опций, выбранных клиент

    2) Получить информацию о клиенте для данного заказа

    3) Получить все заказы для заданного диапазона дат

  • Серверная часть

    1) Создайте пользовательское меню в бэкэнде

    2) Создайте пользовательскую вкладку на странице конфигурации

    3) Храните свои собственные данные в базе данных

Все это примеры, они могут быть совершенно разными в зависимости от ваших потребностей.

На этом этапе вы обнаружите, что просматриваете основной код Magento и пытаетесь поймите, какие шаги предпринимает Magento для выполнения определенной задачи (например, для создания нового продукта).

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

Продвинутый

На данный момент вы рассматриваете Magento как средство удовлетворения бизнес-потребностей ваших клиентов (очевидно, что это не обязательно, но это хороший знак).

Вот некоторые модули, которые могут помочь вам мыслить интересными способами:

  • Новый тип продукта

    Осмотритесь и попытайтесь увидеть тип продукта, который Magento не поддерживает по умолчанию, и создайте модуль, который его поддерживает.

    Примером этого может быть продукт, основанный на событиях (например, продажа билетов на спортивную игру), задача состоит в том, чтобы позволить пользователю выбрать место и время, и система должна будет сообщить им, доступно ли это, если нет, она сообщит им, когда ближайший доступный слот.

    Часть задачи состоит в том, чтобы убедиться, что продукт хорошо работает в следующих местах:

    1) Серверный администратор должен иметь возможность вводить необходимые данные (такие как вид спорта, стоимость и количество доступных мест)

    2) Интерфейс - Эта информация должна отображаться пользователю во время покупок

    3) Корзина/Оформление заказа - Пользователь должен видеть вид спорта, тип сиденья, количество мест и дату, когда он/она покупка.

    4) Заказы - Эта информация должна храниться в системе, чтобы владелец знал, что было куплено

    Вы можете добавить больше деталей, но вы поняли суть.

  • Импорт продуктов Google Doc

    Одним из наиболее популярных направлений разработки в Magento является импорт продуктов.

    Цель этого модуля - импортировать продукты и их данные из электронной таблицы Google, помните, что ваш клиент не хочет обучать своего сотрудника по вводу данных в Magento ;)

    Вот примерное представление о том, как это будет работать:

    1) Magento входит в учетную запись пользователя на Google Диске и ищет файл под названием Категории

    2) Он анализирует файл, чтобы найти все остальные файлы на диске, которые он должен искать (у каждой категории есть отдельный файл)

    3) Magento переходит к каждому файлу category и анализирует файл, каждая строка содержит один продукт со всеми его данными

    4) Magento пытается сохранить продукт в базе данных (или просто изменения в продукт, если продукт уже существует), если есть ошибка, он показывает удобную для пользователя ошибку в столбце для ошибок (в электронной таблице).

  • Расширенное средство просмотра/анализа заказов

    Этот модуль предназначен для того, чтобы видеть заказы в бэкэнде полезным для бизнеса способом. По сути, вы создаете сетку, которую можно сортировать по-разному (например, от низкого к высокому или в алфавитном порядке).

    Вот некоторые из функций, которые он будет иметь:

    1) Способность видеть клиент, связанный с заказом

    2) Возможность видеть общее количество товаров для каждого заказа

    3) Возможность фильтрации по дате, клиенту, количеству заказанных товаров и заказу на доставку

    3) Фильтр позволит выбрать несколько вариантов "ГДЕ", "И" и "ИЛИ" (например, многоуровневая навигация)

    По сути, это будет выглядеть как электронная таблица Excel, и пользователь может выбрать, какие "столбцы" просматривать, и может решить, как отфильтровать их, чтобы они могли улучшить бизнес решения.

  • Модуль Ресторанного магазина

    Еще одной популярной областью разработки Magento является интеграция с другими системами и сервисами.

    Цель этого модуля - создать условия для покупок продуктов питания на вынос, помимо необходимости редактирования/создания нового типа продукта, для этого необходимо взаимодействовать с популярной системой POS, чтобы клиент мог централизованно управлять всеми своими заказами.

    Некоторые другие функции, которые следует учитывать:

    1) Интеграция с бесшовным и грубым концентратором

    2) Возможность для клиента видеть "статус" своего заказа в реальном времени

    3) Возможность для клиента перезаказывать свои любимые

    4) Создайте функцию "умных" стимулов, которая дает процентные скидки твердолобым клиентам за их любимые продукты (те, которые они покупают больше всего)

Как вы можете видеть, на данном этапе речь идет скорее о понимании потребностей бизнеса на данном этапе, а затем о понимании того, как изменить продукт атрибут.

Резюме

Большинство людей учатся не в определенном порядке (как предполагает этот пост), а в определенных областях они переходят на продвинутый уровень, в то время как в других они могут находиться на начальном или среднем уровне.

Где бы вы ни находились, вы можете найти способы расти, решая задачи для этого уровня.

 15
Author: pzirkind, 2013-01-31 22:43:10

Не так много идей для модулей.

Неплохо бы ознакомиться с тем, как работает оформление заказа.

Таким образом: Создайте модуль платежного шлюза. расширьте оформление заказа и добавьте дополнительный шаг.

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

Удачи Б-)

 4
Author: ProxiBlue, 2013-01-31 14:46:52

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

Если у вас нет никаких потребностей, вы можете подумать об "общих" потребностях, которые люди попросили бы вас развить.

 1
Author: inavas, 2013-01-31 16:46:28

Вы могли бы работать над более сложными решениями:

  • интеграция с CRM, ERP, CMS или другими (синхронизация данных в обоих направлениях)
  • Решения для единого входа на основе OpenID, Oauth, LDAP и/или других
  • Создайте улучшенный редактор информационных бюллетеней
  • Создайте тему адаптивного дизайна, если вам нравится больше работы с интерфейсом
  • Создайте статистический мониторинг с помощью графического модуля, подобного этому

Вы также можете быть частью Magento Хакатон или посмотрите существующие проекты Хакатона и примите в них участие. Нам всегда нужны люди, и вы найдете множество подобных проектов.

 1
Author: Sylvain Rayé, 2016-12-26 01:22:06