ConstantMath / variable3000-i18n

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Variable 3000

The Variable multilingual admintool build on Laravel 5.5.

License


Table of Contents


Commands

Installation

Variable3000 utilizes Composer to manage its dependencies.

After cloning this repo, you can laucnh a composer install.

To start a new project and generate the environement file (experimental).

  $ php artisan variable3000:install

Generate a ressource

The initial project comes with 2 resources : projects & pages, use this to create a new resource ans his dependencies.

  $ php artisan variable3000:generate resource

Edit the database/migrations/1970_01_01_create_xxx_table.php migration file.

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateResources extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up(){
      Schema::create('resource_translations', function (Blueprint $table) {
        $table->increments('id');
        $table->integer('resource_id')->unsigned();
        $table->string('locale')->index();
        $table->string('title');
        $table->string('slug');
        $table->text('intro')->nullable();
        $table->text('text')->nullable();
        $table->unique(['resource_id','locale', 'slug']);
        $table->foreign('resource_id')->references('id')->on('resources')->onDelete('cascade');
      });

      Schema::create('resources', function(Blueprint $table) {
        $table->increments('id');
        $table->boolean('published')->default(false);
        // These columns are needed for Baum's Nested Set implementation to work.
        // Column names may be changed, but they *must* all exist and be modified
        // in the model.
        // Take a look at the model scaffold comments for details.
        // We add indexes on parent_id, lft, rgt columns by default.
        $table->integer('resource_id')->nullable()->index();
        $table->integer('lft')->nullable()->index();
        $table->integer('rgt')->nullable()->index();
        $table->integer('depth')->nullable();
        $table->timestamps();
      });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down(){
      Schema::drop('resource_translations');
      Schema::drop('resources');

    }
}

Migrate it

    $ php artisan migrate

Edit the newly created Model:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Page extends GenericRessource{
    //
}

Generate a sitemap

Generate a .xml sitemap inside the public folder.
Edit recipes in : App/Console/commands/GenerateSitemap.
Thanks Spatie.be, more info here : laravel-sitemap

  $ php artisan sitemap:GenerateSitemap

About


Languages

Language:JavaScript 87.7%Language:PHP 8.7%Language:HTML 3.6%