2017 © Pedro Peláez
 

project flexcms

Flexible CMS

image

jozwikp/flexcms

Flexible CMS

  • Friday, July 6, 2018
  • by jozwikp
  • Repository
  • 1 Watchers
  • 0 Stars
  • 3 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

Flexcms

Flexcms is simple and flexible yet powerful Laravel functionality.! It lets you build a page structure with lists and pages., (*1)

Every page can exist within the list or separately. You can build a blog with categories or a lonely contact page., (*2)

Full feature list

  • Use of standard authentication and user account but separated logic of admin and author - no changes to your User model
  • Use of routes fallback gives you the unlimited paths flexibility
  • Blade templates for lists and pages
  • Pages as part of lists or standalone Pages
  • Full SEO support with meta title end description
  • Laravel cache for Pages and Lists - 0 database queries for page or list display
  • Simple but powerful Admin and Author panel
  • Easy to understand, publish and customization

Flexible paths

The most important thing is that you can have a page or a list with whatever url you like for example: - /my-page - /blog/super-category/super-post-with-extra-content - /contact - /about/company - /your/super/path/to/content, (*3)

Separated

Flexcms doesn't change any of the existing Laravel app. You don't even have to add anything to User model., (*4)

Styleable

Every List or Page can have its own blade template., (*5)

Cached

Flexcms is ultra fast. Every Page and List is fully cached. No database request., (*6)

Installation

Laravel 5.6 with standard Authentication, (*7)

composer require jozwikp/flexcms

Add basic authentication, (*8)

php artisan make:auth

Add the ServiceProvider to the providers array in config/app.php, (*9)

Jozwikp\Flexcms\FlexcmsServiceProvider::class,

Add this line to the end of your routes/web.php, (*10)

Route::any('{path}', '\Jozwikp\Flexcms\controllers\PathController@resolve')->where('path', '(.*)');

Run migrations, (*11)

php artisan migrate

Add admin user with:, (*12)

$ php artisan flexcms:makeadmin

Flexcms use images to lists and pages so you should create a symbolic link from "public/storage" to "storage/app/public" with:, (*13)

$ php artisan storage:link

Login to your app and go to /flexcms, (*14)

Next steps

Share the lists with the views in your AppServiceProvider.php boot() method, (*15)

$lists = Cache::rememberForever('lists', function() {
          return Liist::with('siblings')->whereNull('parent_id')->get();
        });
view()->share('lists', $lists);

Include partials in your template (parent lists), (*16)

@include('flexcms::_lists')

or (parents with siblings), (*17)

@include('flexcms::_lists-siblings')

Customize the default views

Publish the views, (*18)

php artisan vendor:publish

list-default.blade.php page-default.blade.php, (*19)

If you need other type of views you can copy default views and change default into other name. Use your new name while editing lists or pages., (*20)

The Versions

06/07 2018

dev-master

9999999-dev

Flexible CMS

  Sources   Download

by Paweł Jóźwik