Quais módulos interessantes devo desenvolver para o Magento para aprendizado?

9

Já faz um tempo que estou estudando Magento. Fiz vários módulos, mas ainda acho que preciso de um pouco mais de treinamento, mas não consigo pensar em um módulo interessante para fazer estritamente para trabalhar com o máximo de coisas possível.

Aqui estão alguns módulos que eu criei: blog, notificação por email do administrador, produtos relacionados, pop-up de visualização do produto.

Então, alguém pode sugerir um módulo que exija que eu aprenda coisas que ainda não toquei, ou maneiras interessantes de pensar?

Esta pergunta pode não ter 100% do formulário de resposta de perguntas e respostas necessário para este site, mas espero conseguir algumas sugestões

Obrigado.

PS: Tudo é estritamente para fins educacionais, quero aprender todas as pousadas do Magento.

Vlad Preda
fonte
Isso é bastante útil, então não tenho certeza de que mereça ser incluído como uma resposta real, mas o Commerce Bug é uma ótima maneira de começar a entender o que está acontecendo nos bastidores, e uma ótima ferramenta a ser usada quando você começa a tocar naqueles coisas que você não toquei antes: commercebugdemo.pulsestorm.net
Alan Storm
11
Obrigado, eu realmente tê-lo, e é muito, muito útil :)
Vlad Preda
Dependendo de você ter esgotado suas amostras de aprendizado, você pode ver isso ;-) Exibindo uma lista selecionável no Onepage Checkout e adicionando o item selecionado a um pedido em que estou lutando em torno de classes, módulos, renderizações e blocos / modelos!
Eyeglasses Of Life

Respostas:

15

Ao aprender Magento, existem algumas etapas:

Principiante

Nesta fase, você está tentando aprender o arquivo Magento, a classe e a estrutura do componente.

Esses incluem:

  • XML

    Aqui você está aprendendo a alterar diferentes definições de configuração por meio do XML, alguns exemplos incluem, mover posições de bloco, registrar módulos e atribuir novos modelos.

  • Blocos

    Você configura blocos personalizados para tomar algumas decisões de negócios, por exemplo, mostrando um ícone especial no frontend para um produto específico.

  • Modelos

    Aqui você aprende como o Magento acessa dados do banco de dados e como manipulá-los de diferentes maneiras, por exemplo, obtendo uma lista de clientes em ordem alfabética.

  • Ajudantes

    Aqui você aprende como criar classes auxiliares para funções utilitárias, por exemplo, criando uma função que formata os nomes dos clientes em maiúsculas.

  • Controladores

    Aqui você aprende a criar URLs personalizados com funcionalidade personalizada, por exemplo, criando uma página na qual os clientes podem verificar seu 'status de garantia'.

Intermediário

Nesta fase, você está tentando aprender sobre as diferentes partes do Magento.

Alguns deles são:

  • produtos

    Aqui você está tentando entender as diferentes partes de um produto e seus atributos.

    Alguns exemplos seriam:

    1) Obtendo e configurando valores para os atributos dos produtos

    2) Obter e definir valores para as opções selecionadas dos produtos no carrinho

  • Cliente

    1) Obtendo e alterando dados do cliente

    2) Mostrando visões diferentes para usuários específicos (como para a equipe de vendas)

  • Ordens de venda

    1) Obtendo todos os produtos do pedido e suas opções selecionadas pelo cliente

    2) Obter as informações do cliente para um determinado pedido

    3) Receba todos os pedidos para um determinado período

  • Processo interno

    1) Crie um menu personalizado no back-end

    2) Crie uma guia personalizada na página de configuração

    3) Armazene seus próprios dados no banco de dados

Estes são exemplos: eles podem ser totalmente diferentes, dependendo de suas necessidades.

Nesse ponto, você estará navegando pelo código principal do Magento e tentando entender as etapas que o Magento executa para realizar uma determinada tarefa (como criar um novo produto).

Como você pode ver neste momento, sua visualização do Magento se parece mais com uma estrutura de comércio eletrônico e, ao entender melhor os diferentes componentes, você pode criar à sua vontade.

Avançado

Neste ponto, você está vendo o Magento como um meio de atender às necessidades de negócios de seus clientes (obviamente não é imperativo se sentir assim, mas é um bom sinal).

Aqui estão alguns módulos que podem ajudá-lo a pensar de maneiras interessantes:

  • Novo tipo de produto

    Olhe ao redor e tente ver um tipo de produto que o Magento não suporta por padrão e crie um módulo que o suporte.

    Um exemplo disso seria um produto baseado em eventos (como vender ingressos para um jogo de esportes), o desafio é permitir que o usuário selecione um assento e um horário, e o sistema precisará informar se ele está disponível, se não estiver disponível. , eles informam quando o slot disponível mais próximo é.

    Parte do desafio é garantir que o produto funcione bem nos seguintes locais:

    1) Back-end - o administrador deve poder inserir os dados necessários (como tipo de esporte, custo e número de vagas disponíveis)

    2) Frontend - Essas informações precisam ser exibidas ao usuário durante as compras

    3) Carrinho / Checkout - O usuário deve ver o tipo de esporte, tipo de assento, número de assentos e data em que está comprando.

    4) Pedidos - Essas informações precisam ser armazenadas no sistema para que o proprietário saiba o que foi comprado

    Você pode adicionar mais detalhes, mas você entende.

  • Importação de produtos do Google Doc

    Uma das áreas de desenvolvimento mais populares do Magento é a importação de produtos.

    O objetivo deste módulo é importar produtos e seus dados de uma planilha do Google. Lembre-se de que seu cliente não deseja treinar o responsável pela entrada de dados no Magento;)

    Aqui está uma idéia aproximada de como isso funcionaria:

    1) O Magento efetua login na conta do Google Drive do usuário e procura um arquivo chamado Categorias

    2) Analisa o arquivo para encontrar todos os outros arquivos na unidade que ele deve procurar (cada categoria possui um arquivo separado)

    3) Magento vai para cada categoryarquivo e analisa o arquivo, cada linha contém um produto com todos os seus dados

    4) O Magento tenta salvar o produto no banco de dados (ou apenas as alterações no produto, se o produto já existir); se houver um erro, será exibido um erro amigável na coluna para erros (na planilha).

  • Visualizador / analisador avançado de pedidos

    Este módulo trata de ver os pedidos no back-end de uma maneira útil para os negócios. Essencialmente, você está construindo uma grade que pode ser classificada de maneiras diferentes (por exemplo: baixa para alta ou em ordem alfabética).

    Aqui estão alguns dos recursos que ele terá:

    1) Capacidade de ver o cliente associado ao pedido

    2) Capacidade de ver o número total de itens para cada pedido

    3) Capacidade de filtrar por data, cliente, número de itens pedidos e pedido de venda

    3) O filtro permitirá várias seleções WHERE, AND e OR (como a navegação em camadas)

    Com efeito, ela se parecerá com uma planilha do Excel, e o usuário poderá selecionar quais 'colunas' exibir e decidir como filtrá-la para que possa tomar melhores decisões de negócios.

  • Módulo da loja do restaurante

    Outra área de desenvolvimento popular do Magento é a integração com outros sistemas e serviços.

    O objetivo deste módulo é criar uma experiência de compra de alimentos, além da necessidade de editar / criar um novo tipo de produto, é necessário interagir com um sistema POS popular, para que o cliente possa ter um gerenciamento central de todos os seus pedidos.

    Alguns outros recursos a serem considerados:

    1) Integração com Seamless e Grub Hub

    2) Capacidade para o cliente ver um 'status' ao vivo do pedido

    3) Capacidade para o cliente reordenar seus favoritos

    4) Crie um recurso de incentivo 'inteligente' que ofereça porcentagens para que os clientes que morrem com dificuldade de comer suas comidas favoritas (aquela que eles mais compram)

Como você pode ver, neste momento, trata-se mais de entender as necessidades dos negócios neste momento e, em seguida, entender como alterar o atributo de um produto.

Sumário

A maioria das pessoas não aprende em uma determinada ordem (como sugere este post), em certas áreas, elas pulam para o avançado, enquanto em outras podem estar no nível iniciante ou intermediário.

Não importa onde você esteja, você pode encontrar maneiras de crescer, apresentando desafios para esse nível.

pzirkind
fonte
@VladPreda seu bem-vindos, apenas certifique-se de me dar uma cópia gratuita dos módulos criados;)
pzirkind
11
Hehe, é claro, em alguns anos, quando eu começar a escrever módulos suficientemente bem para vendê-los :) #
1111 Vlad Preda
3

Não há muitas idéias para módulos.

É uma boa idéia familiarizar-se com o funcionamento do checkout.

assim: Crie um módulo de gateway de pagamento. estenda a finalização da compra e adicione uma etapa extra.

Também trabalha na área de administração; os módulos geralmente exigem seções de administração para uso dos clientes. Aqui, não me refiro apenas à configuração do sistema, mas ao uso de grades, guias etc.

Boa sorte B-)

ProxiBlue
fonte
+1 no comentário da área administrativa. Eu olhava para estender grades e guias também, para adicionar funcionalidade extra para funções de administração existentes
CCBlackburn
1

Você pode pensar em suas próprias necessidades, acho que é a melhor maneira de aprender, porque se você estiver fazendo algo que precisa, ficará mais motivado do que de outra maneira.

Se você não tem nenhuma necessidade, pode pensar nas necessidades "gerais" que as pessoas pediriam para você desenvolver.

inavas
fonte
1

Você poderia trabalhar em soluções mais complexas:

  • integração com CRM, ERP, CMS ou mais (sincronização de dados em ambas as direções)
  • Soluções de logon único baseadas em OpenID, Oauth, LDAP e / ou outros
  • Crie um editor de boletim aprimorado
  • Crie um tema de design responsivo se desejar mais trabalho de front-end
  • Crie um monitoramento estatístico com gráficos como este módulo

Você também pode fazer parte do Magento Hackathon ou dar uma olhada nos projetos existentes do Hackathon e participar deles. Sempre precisamos de pessoas e você encontrará muitos tipos de projetos.

Sylvain Rayé
fonte
Impressionante, obrigado por tomar o tempo para resposta, o engraçado é que em 2 semanas vou começar uma integração com um ERP no trabalho, uma sincronização 2way: P
Vlad Preda