Statamic se integruje s Laravelem jako všestranným CMS postavený na vrcholu Laravel Framework, což umožňuje vývojářům Laravel bez problémů přidávat schopnosti správy obsahu do svých aplikací Laravel. Může být nainstalován jako skladatelský balíček do existujícího projektu Laravel nebo použitý samostatný, což poskytuje vysoce prodloužitelný a přizpůsobitelný zážitek z CMS, který úzce odpovídá Laravelově architektuře a konvencemi.
Přístup ke základní integraci
Statamic je navržen jako balíček Laravel a lze jej zavést do existující aplikace Laravel nainstalováním prostřednictvím skladatele. Tento proces instalace zahrnuje tažení do balíčku statamic CMS a zveřejnění jeho aktiv a konfiguračních souborů v rámci projektu Laravel. Tímto způsobem se Statamic stane součástí ekosystému a funkcí aplikace Laravel vedle Laravel's vlastních funkcí. Pro typickou integraci, poté, co jste vyžadovali statamic prostřednictvím skladatele, spustíte příkazy řemeslníků k publikování majetku a konfigurací dodavatele a poté proveďte kroky instalace statamické v prostředí Laravel.
Použití ve stávajících laravel aplikacích
Statamic lze přidat do existující aplikace Laravel pro správu konkrétních oblastí obsahu, jako jsou marketingové stránky, blogy nebo statický obsah, což umožňuje aplikaci těžit z CMS bez budování správy obsahu od nuly. Vývojáři jsou schopni přizpůsobit trasy tak, aby koexistovaly s trasami Laravel a zajistily, že mezi funkcemi aplikace App neexistují žádné konflikty. Tím, že využívá LARAVEL's Templating nebo Statamicův vlastní templingový jazyk parohů, lze obsah CMS zobrazovat v rámci front-end aplikace.
Skladování a správa obsahu
Ve výchozím nastavení Statamic ukládá obsah v plochých souborech spíše než v databázi, přičemž zahrnuje oddělený styl správy obsahu, který dobře zapadá do filozofie konfigurace založené na souboru Laravel. U projektů, které vyžadují perzistenci databáze, však Stamic podporuje ukládání obsahu prostřednictvím ovladačů databáze, včetně vlastních implementací, kde jsou data obsahu uložena ve sloupcích JSON v relačních databázích. Tato přizpůsobitelnost znamená, že vývojáři mohou přizpůsobit vrstvu obsahu Statamic tak, aby odpovídala pracovním postupům řízeným databází.
Rozšiřitelnost s prvky Laravel
Statamic využívá poskytovatele služeb Laravel, middleware a modely, díky čemuž je v ekosystému Laravelu velmi rozšiřující. Vývojáři mohou rozšířit statamickou funkčnost pomocí standardních laravelových technik a nástrojů. To umožňuje hluboké přizpůsobení a integraci správy obsahu spolu s obchodní logikou v aplikacích Laravel. Statamic také podporuje správu uživatelů, které lze integrovat s poskytovateli nativních uživatelů Laravel nebo udržováno samostatně, v závislosti na potřebách aplikace.
frontend a ovládací panel
Statamic poskytuje čistý, moderní ovládací panel pro správu obsahu webu, přístupný v prostředí aplikace Laravel. Jeho vykreslování front-end je flexibilní a používá systém „datová kaskáda“, který hydratuje pohledy na základě URL a usnadňuje dynamické a statické dodávání obsahu. Šablonový motor Antlers, stativský templingový jazyk, nabízí vývojářům způsob, jak snadno vytvořit pokročilé zobrazení dynamického obsahu při zachování kompatibility s Laravel's Templates.
Bezhlavé použití CMS a API
Statamic lze také použít jako bezhlavý CMS spolu s Laravel a poskytuje API RESTful nebo GraphQL pro dodávání obsahu. Tato konfigurace umožňuje Laravel Apps konzumovat obsah spravovaný statamic jako data, což je ideální pro oddělené architektury frontend nebo projekty řízené API. Tato integrace umožňuje vývojářům Laravelu používat statamic čistě pro správu obsahu a zároveň nezávisle ovládat front-end prezentaci.
Laravel Forge Integration
Laravel Forge, populární nástroj pro správu serveru Laravel, nyní nabízí integraci první strany se Statamic. Tato integrace zjednodušuje nasazení a konfiguraci serveru při používání STATAMIC s Laravel, což vývojářům umožňuje rychle nasadit statamicko-poháněné laravel weby s minimálním nastavením. Laravel Forge zefektivňuje proces instalace STATAMIC na serverech, které řídí, včetně předběžných nastavení startovacích souprav a vlastních konfigurací pro statamiku.
Typické kroky instalace a konfigurace
1. Požadavek na skladatel: Přidejte statamic do projektu Laravel spuštěním `Composer vyžadují statamic/cms`.
2. Publishing Assets: Zveřejňujte aktiva a konfigurace statamic pomocí příkazů Publikování dodavatele řemeslníků.
3. Příkaz instalace: Pomocí příkazů Laravel Artisan dokončete statamickou instalaci.
4. migrace uživatele: Pokud používáte nativní ověřování Laravel, proveďte další kroky migrace pro integraci uživatele.
5. Konfigurace souborového systému: Upravte konfigurace souborových systémů v případě potřeby pro správu aktiv.
6. Úpravy směrování: Upravte existující trasy tak, aby vyhovovaly směrování obsahu statamic a přitom se vyhnuly konfliktům.
7. Nastavení motivu a šablony: Umístěte nebo převeďte šablony frontend na statické paže nebo šablony čepele v aplikaci Laravel.
8. Revize konfigurace: Aktualizujte konfigurační soubory nalezené v `config/statamic` pro ukládání do mezipaměti, vyhledávání, formuláře a oprávnění.
9. Testování: Důkladně otestujte integrované nastavení, abyste zajistili, že funkce aplikace Laravel a funkce CMS Statamic koexistují bez problémů.
Přímé správa obsahu v Laravelu
Statamic umožňuje vývojářům vytvářet sbírky, položky a pole, které definují typy obsahu, jako jsou stránky nebo blogové příspěvky, které lze spravovat prostřednictvím jeho ovládacího panelu. Tyto položky mohou být uloženy v plochých souborech nebo v databázi v závislosti na konfiguraci. V prostředí integrovaném Laravel tyto správy obsahu zmocňuje týmy, aby efektivně spravovaly obsah webu bez dotyku kódu, zatímco vývojáři udržují plnou kontrolu nad logikou a prezentací aplikace.
Vlastní úložiště a pokročilé použití
Pokročilí uživatelé mohou v Laravelu sestavit vlastní vstupní úložiště pro programově interakce se statamickým obsahem, včetně použití výmluvných modelů pro manipulaci s daty a schémata vlastních databází. Tím se otevírá možnosti složité obchodní logiky vrstvené na strukturách statamického obsahu a využívá výkonné schopnosti ORM Laravel.