Search code examples
phpjoomlalaravelmigration

Joomla to Laravel migration


If task is migrate from joomla CMS v3 to Laravel - theme, modules, database, authentication, ORM and CMS for edit content, from what I should start?

Routing

Methods

Views

Any ideas will be good, also suggestions with bundles to help, for example any good Administration CMS for Laravel?


Solution

  • Unfortunately I'm pretty sure you'll not find any packages or projects that migrates a Joomla web site to Laravel (or, maybe, CodeIgniter which is much older than Laravel).

    A CMS is something that does a lot, in terms of functionality and code, and is really difficult to reproduce unless you build something similar. There are some CMS based in Laravel, PyroCMS is one of them, so you may check with them if there is a way to move from Joomla to their CMS.

    If by migrate a theme you mean migrating HTML+CSS+Javascript to Laravel, this is an easy task, but, you still have to look to Laravel as a language, yes it's not a language it's a framework, but it is closer to a language than to a CMS, so you would have to create the CMS part in Laravel (PHP).

    The good news is that Laravel makes it very easy to build anything you like, because it is highly extendable (using composer packages, PEAR packages or even messing with the Laravel core) and there are no strict rules, you can change everything. It also has an IoC container which ease the access to classes, instantiated objects, singletons and thus methods. It also facilitate things by automatically inject dependencies (Dependency Injection) in your class constructors, so you don't have to instantiate everything to pass to your objects while creating them which also facilitates decoupling.

    Take a look at Wardrobe CMS source code. This is a really nice little CMS built with Laravel by one of the folks that work with Taylor Otwell, Laravel creator. You may even use it as a starting point for your own CMS.

    Here's a list of CMS built with Laravel:

    Stable

    Laravel Bootstrap https://github.com/davzie/laravel-bootstrap

    Bootstrap starter site https://github.com/andrewelkins/Laravel-4-Bootstrap-Starter-Site

    Pongo CMS v1 http://pongocms.com

    Wardrobe CMS (blogging) https://github.com/wardrobecms/wardrobe

    In development at the moment

    PongoCMS v2 http://pongocms.com

    October CMS http://octobercms.com/

    Larapress https://github.com/larapress-cms/larapress

    Koanda https://github.com/CoandaCMS/coanda-core