Package contains core models, migrations, behaviors, controllers etc. for the LobiCMS


Keywords
extension, yii2, LobiCMS core, yii2 CMS core
License
BSD-4-Clause

Documentation

LobiCMS core

Package contains core models, migrations, behaviors, controllers etc. for the LobiCMS

Installation

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist apollo11/lobi-cms-core "*"

or add

"apollo11/lobi-cms-core": "*"

to the require section of your composer.json file.

Upgrading from single site to Multi site

Important!!!

Make sure you do not override ContentTree::getActiveTranslation and BaseModel::getActiveTranslation methods


  1. Add user component in console/config.php

    'user' => [
        'class' => \apollo11\lobicms\web\User::class,
        'enableSession' => false,
        'identityClass' => \apollo11\lobicms\models\User::class
    ]
  2. Add controllers in console/config.php

    'sync' => [
        'class' => \apollo11\lobicms\console\controllers\SyncController::class,
    ],
    'utils' => [
        'class' => \apollo11\lobicms\console\controllers\UtilsController::class,
    ],
  3. Configure mulsitecore component in common/config/base.php If you want to have different domains for different environments, better to create ignored file and include inside multisitecore config

    'websites' => [
        'website key1' => [
            'defaultContentId' => "content tree id",
            'masterLanguage' => 'en-US',
            "storageUrl" => 'storage url',
            "domains" => [
                'domain1' => 'en-US',
                'domain2' => 'en-US',
            ]
        ],
        'website key2' => [
            'defaultContentId' => "content tree id",
            'masterLanguage' => 'en-US',
            "storageUrl" => 'storage url',
            "domains" => [
                'domain1' => 'en-US',
                'domain2' => 'en-US',
            ]
        ]
    ]
  4. Add console script to run core migrations in ./migrate bash script as the first line

    php console/yii migrate --migrationPath=@vendor/apollo11/lobi-cms-core/migrations
  5. Run migration

    ./migrate
  6. For switch language from 'en' to 'en-US'

    php console/yii utils/switch-language en en-US
  7. Read languages from multiSiteCore websites and insert it in language table

    php console/yii sync/languages 
  8. Add websites in contentTree

    php console/yii sync/websites 
  9. Make frontend/controllers/ContentTreeController to be extend of core's FrontendContentTreeController


  1. To copy the website content when you have already run php console/yii sync/websites

    php console/yii utils/copy-language $fromWebsiteKey $toWebsiteKey $from $to
  2. Copy language inside website

    php console/yii utils/add-language $websiteKey $from $to