Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Como o estatâmico se integra com o Laravel


Como o estatâmico se integra com o Laravel


O Statamic se integra ao Laravel como um CMS versátil construído no topo da estrutura do Laravel, permitindo que os desenvolvedores da Laravel adicionem recursos de gerenciamento de conteúdo perfeitamente às suas aplicações de Laravel. Ele pode ser instalado como um pacote de compositor em um projeto de Laravel existente ou usado independente, fornecendo uma experiência CMS altamente extensível e adaptável que se alinha em estreita colaboração com a arquitetura e convenções de Laravel.

abordagem de integração do núcleo

O Statamic é projetado como um pacote de Laravel e pode ser introduzido em um aplicativo Laravel existente, instalando -o via compositor. Este processo de instalação envolve a extração do pacote estatâmico do CMS e a publicação de seus ativos e arquivos de configuração no projeto Laravel. Dessa forma, o estatâmico se torna parte do ecossistema do aplicativo Laravel e funciona ao lado dos próprios recursos de Laravel. Para uma integração típica, depois de exigir estatâmica via compositor, você executa comandos artesanais para publicar os ativos e configurações do fornecedor e, em seguida, executa as etapas de instalação estatâmica no ambiente Laravel.

Uso em aplicações de Laravel existentes

O estatâmico pode ser adicionado a um aplicativo Laravel existente para gerenciar áreas de conteúdo específicas, como páginas de marketing, blogs ou conteúdo estático, permitindo que o aplicativo se beneficie de um CMS sem criar gerenciamento de conteúdo a partir do zero. Os desenvolvedores são capazes de personalizar rotas para coexistir com as rotas Laravel, garantindo que nenhum conflito surja entre a funcionalidade do aplicativo e as necessidades de roteamento da Statâmica. Ao alavancar o modelo de lâmina de Laravel ou a linguagem de modelos de chifres da Statamic, o conteúdo do CMS pode ser exibido no front-end do aplicativo sem problemas.

Armazenamento e gerenciamento de conteúdo

Por padrão, o Statâmico armazena conteúdo em arquivos planos em vez de um banco de dados, adotando um estilo de gerenciamento de conteúdo dissociado que se encaixa bem na filosofia de configuração baseada em arquivos de Laravel. No entanto, para projetos que exigem persistência do banco de dados, o Statâmico suporta armazenamento de conteúdo por meio de drivers de banco de dados, incluindo implementações personalizadas em que os dados de conteúdo são armazenados em colunas JSON nos bancos de dados relacionais. Essa personalização significa que os desenvolvedores podem adaptar a camada de conteúdo da Statâmica para ajustar os fluxos de trabalho orientados a banco de dados, se desejar.

extensibilidade com recursos de Laravel

O estatâmico aproveita os provedores de serviços, middleware e modelos de Laravel, tornando -o altamente extensível no ecossistema de Laravel. Os desenvolvedores podem estender a funcionalidade estatâmica usando técnicas e ferramentas padrão de Laravel. Isso permite a personalização profunda e a integração do gerenciamento de conteúdo, juntamente com a lógica de negócios em aplicativos Laravel. A Statâmica também suporta gerenciamento de usuários que pode ser integrada aos provedores de usuários nativos da Laravel ou mantidos separadamente, dependendo das necessidades de aplicativos.

Painel de front -end e controle

O Statâmico fornece um painel de controle moderno e limpo para gerenciar o conteúdo do site, acessível no ambiente do aplicativo Laravel. Sua renderização front-end é flexível e usa um sistema "cascata de dados" que hidrata as visualizações com base em URLs, facilitando a entrega dinâmica e estática de conteúdo. O mecanismo de modelo Antlers, a linguagem de modelos da Statâmica, oferece aos desenvolvedores uma maneira de criar visualizações avançadas de conteúdo dinâmico facilmente, mantendo a compatibilidade com os modelos de lâmina de Laravel.

CMS sem cabeça e uso da API

O estatâmico também pode ser usado como um CMS sem cabeça ao lado do Laravel, fornecendo APIs RESTful ou GraphQL para entrega de conteúdo. Essa configuração permite que os aplicativos do Laravel consumam conteúdo gerenciado por estatâmica como dados, tornando-o ideal para arquiteturas de front-end desacopladas ou projetos orientados a API. Essa integração permite que os desenvolvedores da Laravel usem o estatâmico puramente para gerenciamento de conteúdo enquanto controla independentemente a apresentação do front-end.

Integração de Forge do Laravel

O Laravel Forge, uma ferramenta popular de gerenciamento de servidores Laravel, agora oferece integração de primeira parte com o Statamic. Essa integração simplifica a implantação e a configuração do servidor ao usar o Statamic com o Laravel, permitindo que os desenvolvedores implante rapidamente sites de Laravel com estatâmica com configuração mínima. O Laravel Forge simplifica o processo de instalação do estatâmico nos servidores que ele gerencia, incluindo kits iniciantes e configurações personalizadas predefinidas para estatâmica.

Etapas típicas de instalação e configuração

1. Requisito do compositor: adicione estatâmico ao projeto Laravel, executando `compositor requer estatâmico/cms`.
2. Publicação de ativos: publique os ativos e configuração da Statamic com comandos de publicação de fornecedores artesanais.
3. Comando de instalação: use comandos artesanais do Laravel para finalizar a instalação estatâmica.
4. Migrações de usuário: Se estiver usando a autenticação nativa de Laravel, execute etapas de migração adicionais para a integração do usuário.
5. Configuração do sistema de arquivos: ajuste as configurações de sistemas de arquivos, se necessário para o gerenciamento de ativos.
6. Ajustes de roteamento: Modifique as rotas existentes para acomodar o roteamento de conteúdo da Statamic, evitando conflitos.
7. Configuração do tema e modelo: Coloque ou converta modelos de front -end em modelos de lâmina ou lâmina do Statâmico no aplicativo Laravel.
8. Revisão da configuração: Atualize os arquivos de configuração encontrados em `config/statamic` para cache, pesquisa, formulários e permissões.
9. Teste: teste minuciosamente a configuração integrada para garantir que os recursos do aplicativo do Laravel e a funcionalidade do CMS da Statamic coexistem sem problemas.

Gerenciamento de conteúdo direto no Laravel

O Statâmico permite que os desenvolvedores criem coleções, entradas e campos que definem tipos de conteúdo, como páginas ou postagens de blog, que podem ser gerenciadas por meio de seu painel de controle. Essas entradas podem ser armazenadas em arquivos planos ou em um banco de dados, dependendo da configuração. Em um ambiente integrado ao Laravel, esse gerenciamento de conteúdo capacita as equipes a gerenciar o conteúdo do site com eficiência sem tocar o código, enquanto os desenvolvedores mantêm o controle total sobre a lógica e a apresentação do aplicativo.

Repositórios personalizados e uso avançado

Os usuários avançados podem criar repositórios de entrada personalizados no Laravel para interagir com o conteúdo estatâmico programaticamente, incluindo o uso de modelos eloquentes para manipulação de dados e esquemas de banco de dados personalizados. Isso abre possibilidades de lógica de negócios complexas em camadas sobre as estruturas de conteúdo estatâmico, aproveitando os poderosos recursos do ORM da Laravel.

Resumo

A integração da Statâmica com o Laravel é abrangente e flexível. Ele transforma um aplicativo Laravel em uma poderosa plataforma habilitada para CMS, funcionando como um pacote Laravel de primeira classe. Através da instalação do compositor, publicação de configuração, gerenciamento de rotas e integração de modelos, estatâmica graciosamente coloca os recursos de gerenciamento de conteúdo, respeitando a arquitetura e as convenções de Laravel. Ele suporta armazenamento de conteúdo de arquivo plano e banco de dados, um painel de controle moderno, um mecanismo de modelagem exclusivo, recursos do CMS sem cabeça e até tem suporte de implantação através do Laravel Forge. Essa sinergia robusta permite que os desenvolvedores da Laravel implementem a funcionalidade do CMS de nível corporativo sem sacrificar a elegância e o poder de Laravel.