Skip to content

Simple CMS on top of SymfonyCMF for Sylius applications.

Notifications You must be signed in to change notification settings

Lakion/CmsPlugin

Repository files navigation

CMS Plugin for Sylius by Lakion License Version Build status on Linux Scrutinizer Quality Score

Simple CMS for Sylius.

Usage

  1. Install PHPCR implementation of your choice:

    $ composer require jackalope/jackalope-doctrine-dbal
  2. Install this bundle:

    $ composer require lakion/cms-plugin
  3. Add this bundle & dependent ones to AppKernel.php if they do not exist yet:

    new \Doctrine\Bundle\PHPCRBundle\DoctrinePHPCRBundle(),
    new \Symfony\Cmf\Bundle\BlockBundle\CmfBlockBundle(),
    new \Symfony\Cmf\Bundle\ContentBundle\CmfContentBundle(),
    new \Symfony\Cmf\Bundle\CoreBundle\CmfCoreBundle(),
    new \Symfony\Cmf\Bundle\MediaBundle\CmfMediaBundle(),
    new \Symfony\Cmf\Bundle\MenuBundle\CmfMenuBundle(),
    new \Symfony\Cmf\Bundle\RoutingBundle\CmfRoutingBundle(),
    new \Lakion\CmsPlugin\LakionCmsPlugin(),
  4. Import config file in app/config/config.yml:

    imports:
       - { resource: "@LakionCmsPlugin/Resources/config/app/config.yml" }
  5. Import routing files in app/config/routing.yml:

    lakion_cms_admin:
        resource: "@LakionCmsPlugin/Resources/config/app/admin_routing.yml"
        prefix: /admin # root path of SyliusAdmin
    
    lakion_cms_shop:
        resource: "@LakionCmsPlugin/Resources/config/app/shop_routing.yml"
  6. Configure Doctrine PHPCR Bundle (doctrine_phpcr) in app/config/config.yml:

    doctrine_phpcr:
        session:
            backend:
                type: doctrinedbal
                connection: default
            workspace: default
        odm:
            auto_mapping: true
            auto_generate_proxy_classes: "%kernel.debug%"
    
    sylius_resource:
         drivers:
            - doctrine/orm
            - doctrine/phpcr-odm
    
    sylius_grid:
         drivers:
            - doctrine/orm
            - doctrine/phpcr-odm
  7. Update your database schema when using Doctrine

    Using the schema updater:

    $ bin/console doctrine:schema:update

    Or migrations:

    $ bin/console doctrine:migrations:diff
    $ bin/console doctrine:migrations:migrate
  8. Initialize PHPCR repository

    $ bin/console doctrine:phpcr:repository:init

Complementary documentation