Eu criei alguns plugins para o Joomla 3.2 e iniciei recentemente um componente para gerenciar aluguel de apartamentos. Fiquei me perguntando se existe uma estrutura por aí que já tenha a estrutura básica de arquivos / pastas criada com os arquivos necessários para obter um componente rapidamente.
Não quero ter que recriar a roda toda vez que iniciar, e os arquivos e as classes necessários para que um componente funcione tenham uma estrutura básica necessária. Já existe alguém lá fora?
Se não houver, qual componente Joomla de estoque seria um bom exemplo para trabalhar?
EDIT: Ao ver as respostas, acho que talvez "framework" tenha sido uma má escolha de termos. Não estou procurando nada que possua uma base de código própria. Eu estava procurando por algo que tivesse a estrutura de arquivos / pastas comum a todos os componentes do Joomla e exigisse a execução, como o controlador, a pasta views, a pasta models, etc.
O que eu estou procurando não deve ter dependências que ainda não fazem parte do código principal do Joomla.
Eu encontrei um para o joomla 1.5 que tinha todos os arquivos necessários e tudo o que você precisava fazer foi renomear as classes e os arquivos para corresponder ao nome do seu componente e instalar e você teria uma visão básica do administrador, uma visão do menu front-end, etc. ... Espero que alguém por aí tenha criado um para
fonte
Respostas:
Uma ferramenta que eu usei no passado é o Component Creator: http://www.component-creator.com/en/ .
Essa ferramenta permite delinear uma tabela gratuitamente (mais se você se inscrever em um pacote pago), além de outras informações gerais sobre o próprio componente. Você pode fazer o download de um arquivo zip instalável para iniciar o componente.
De qualquer maneira, para aqueles que estão felizes pulando no código, esse pode ser um ótimo método simples para iniciar o desenvolvimento do componente.
Existem também algumas extensões que você pode instalar no Joomla para ajudá-lo a desenvolver outros componentes do Joomla. Um exemplo desse estilo de ajudante é esta extensão gratuita Easy Creator: http://extensions.joomla.org/extensions/misc Miscellaneous/ development / 5908
Esse pode ser um ótimo complemento para um ambiente de teste combinado com uma ferramenta de compilação em um pacote legal.
Existe outra ferramenta chamada Joomla Component Generator para geração de componentes simples e rápida. Permite criar tabelas ilimitadas gratuitamente. Existem pacotes pagos, mas não é necessário comprar, a menos que você precise de várias visualizações. Ele gera um arquivo zip instalável para download também. Um teste revela os benefícios deste gerador. Dê uma olhada no código gerado e no recuo.
http://www.componentgenerator.com/
fonte
Depois de escrever várias extensões para os clientes, eu me vi seguindo muitos dos mesmos padrões repetidamente. Para manter as coisas secas, criei uma "estrutura de componentes" que abstrai a maioria das tarefas comuns que realizo, mas até agora só foi usada internamente na minha empresa. Falta muitos recursos, mas faz o trabalho para o que eu preciso.
Eu disse isso para dizer isso - desenvolva sua própria estrutura de componentes da mesma maneira. Pegue os pontos em comum do código que você está produzindo no momento e suba um nível na hierarquia OO para sua própria camada que fica entre o seu componente e o Joomla. Com essa abordagem, você evita o problema "se a estrutura falir" que o Chad mencionou, e você a entende muito melhor. Até agora, funcionou bem para mim.
fonte
Não gosto de recomendar nenhum tipo de 'estrutura' para esse tipo de coisa por vários motivos:
1) O CMS possui uma 'estrutura', e eu gostaria que, se houvesse a necessidade de facilitar a gravação de extensões, focaríamos no código da estrutura principal em vez de escrever itens de terceiros.
2) Se você escreve sua extensão em uma estrutura que está extinta, você está completamente ferrado.
3) O uso do núcleo é ideal para melhorar as atualizações. Esse não foi sempre o motivo pelo qual existem estruturas de terceiros para isso, mas quanto mais insistimos em que seja o caso e esperamos que seja, mais ele realmente será. Se não focarmos nisso, nunca melhorará.
-
Portanto, com isso dito, existe um "RAD Framework" no Joomla chamado FoF (framework on framework). Eu não o usei, mas é considerado uma ferramenta de economia de tempo. Há alguma documentação aqui:
https://www.akeebabackup.com/documentation/fof/getting-started-with-fof.html
Nota - FoF está INCLUÍDO na distribuição do Joomla 3.2, portanto você não precisa instalá-lo se a extensão for para o Joomla 3.2+.
Finalmente - se você deseja permanecer no núcleo e usar as classes principais do MVC, atualmente ainda é incentivado a usar as classes herdadas do MVC (elas serão alteradas assim que o novo MVC for minucioso). Uma boa extensão básica para se olhar é realmente o componente com_contact ou com_banners. Eles são bastante simples e você pode escolher coisas como JForm e modelos personalizados dessa maneira.
fonte
Eu recomendo Cook Self Service . Acredito que há uma pequena taxa, mas gerou cerca de 85% de nosso principal componente educacional, economizando US $ 1000 para começar e o código gerado foi agradável e limpo para nossa modificação.
fonte
Você já deu uma olhada no componente Joomla Hello World ? Ainda não o examinei, mas parece que ele possui os arquivos mínimos necessários para criar um componente. Além disso, desde que o Joomla 3.2 inclui o Framework on Framework (FOF), você analisou o componente de exemplo To-Do FOF ? Eu sei que escrevi um componente personalizado do Joomla 3.x na minha lista de coisas a fazer e estes foram os dois exemplos que planejava usar no início do projeto. Espero que eles funcionem para você também.
fonte
Nós desenvolvemos o RB Framework, além do Joomla. Nós o usamos para o desenvolvimento de componentes (PayPlans, PayInvoice etc.) ( https://github.com/readybytes/rbframework )
Temos um construtor de componentes para o mesmo ( https://github.com/readybytes/component-builder )
A estrutura acima reduz muito o estresse de fazer as mesmas coisas repetidamente.
Criança levada :
fonte