mymediamagnet / core
Laravel 5.1 CMS Core Package
Requires
- php: >=5.5.9
- illuminate/support: 5.1.x
- laravelcollective/html: ~5.0
- spatie/laravel-medialibrary: dev-master
- symfony/class-loader: ~2.3
This package is not auto-updated.
Last update: 2016-03-02 07:49:06 UTC
README
This package is not currently stable. Many features are buggy and unfinished. Positive criticism and suggestions welcome. This package provides a core CMS framework for basic website development. Our objective is to create a framework that works similar to WordPress in terms of an easy to use content management system.
Features
- Dashboard
- Pages
- Blog
- Contact / Lead Management
- Partials (Widgets to WordPress)
- Custom Meta Fields
- Menu Builder
- Revolution Slider Configurator
- User, Role & Permission Management
Installation
{
"require": {
"mymediamagnet/core": "dev-master"
}
}
Then run a composer update
composer update
Configuration
Next, configure the service providers.
'providers' => array( // ... 'Illuminate\Html\HtmlServiceProvider', 'MyMediaMagnet\Core\App\CoreServiceProvider' ),
Next, add the following to your Exceptions/Handler Class (Suggestions on how to incorporate this into the package welcome)
if ($this->isHttpException($e)) { $pagesController = new CmsRouting(); return $pagesController->render($request->path()); return $this->renderHttpException($e); } else { return parent::render($request, $e); }
Now publish the vendor asset
php artisan vendor:publish
Now run the core user migration command
php artisan core:user_migration
And then the core migration
php artisan core:core_migration
For the time being, you will also have to run the core update. This is the non-destructive way to update the databases and may be required on future commits.
php artisan core:update_migration
Finally, seed the database
php artisan core:core_seed
Users
Replace the content within the default User.php class
namespace App; use MyMediaMagnet\Core\App\CoreUser; class User extends CoreUser { }
Usage
Views
After doing the vendor:publish command, the website folder will be copied into your root resources/views folder.
Custom Fields / Meta
Add a custom field to a page template:
@if($page->hasField('custom_field')) {{ $page->getField('custom_field') }} @endif
Adding Partials and Sliders
Add a slider or partial to a page or post body (wysiwyg):
[partial-slug]
[slider-slug]
Add & Hide Admin Pages
An important aspect of the CMS is being able to extend it for individual project requirements.
After doing a vendor:publish, core.php will be copied to your config folder. The Admin menu is configured from this location.
Theming
In the core.php config file. Angular theming options.
Core - CustomCMS :: Laravel 5, Angular