intentor / laravel-theme
Simple theme manager for Laravel 5.
Requires
- php: >=5.4.0
- laravel/framework: 5.*
This package is not auto-updated.
Last update: 2024-12-07 18:56:21 UTC
README
Simple theme manager for Laravel 5
Currently the project is DISCONTINUED. However, feel free to fork it and continue its development!
Contents
Introduction
Laravel Theme provides a simple way to manage themes on a Laravel app.
Compatible with Laravel 5.
Installation
Laravel 5.0
At composer.json
of your Laravel installation, add the following require line:
{ "require": { "intentor/laravel-theme": "~1.0" } }
Run composer update
to add the package to your Laravel app.
At config/app.php
, add the Service Provider and the Facade:
'providers' => [ 'Intentor\LaravelTheme\ServiceProvider', ] //... 'aliases' => [ 'Form' => 'Intentor\LaravelTheme\Facade', ]
Laravel 5.1+
At composer.json
of your Laravel installation, add the following require line:
{ "require": { "intentor/laravel-theme": "~1.0" } }
Run composer update
to add the package to your Laravel app.
At config/app.php
, add the Service Provider and the Facade:
'providers' => [ Intentor\LaravelTheme\ServiceProvider::class, ] //... 'aliases' => [ 'Form' => Intentor\LaravelTheme\Facade::class, ]
Quick start
Creating a theme
To create a theme, first add a themes
folder to the resources
folder of your app.
Inside the themes
folder, any folder you create will represent a theme. For each theme folder, add a views
folder, in which you'll create all the views for that particular theme.
The folder structure will look like this:
resources
└── themes
├── [theme folder]
| └── views
|
└── [another theme folder]
└── views
Setting a theme
To set a theme, call Theme::set('theme_name')
anywhere you want to change your theme.
Remember: the name of theme is the name of the folder that represents the theme at the resources/themes
folder.
Displaying views
To display a view, just call view('view_name')
without indicating any reference to the theme.
Adding assets
To add assets to pages, just include them pointing to their location at the public
folder.
Best practices
1. Add any assets (images, CSS, JS, etc.) for the theme in a specific folder inside the public
folder.
2. If you're using a task manager (like Gulp or Grunt) it's recommended to add assets at an assets
folder inside the theme and then move the files to the public location.
resources
└── themes
├── [theme folder]
| ├── css/sass/less
| ├── img
| ├── js
| └── views
|
└── [another theme folder]
├── css/sass/less
├── img
├── js
└── views
3. Create shared views at the resources/views
folder.
4. Views in themes always override shared views.
Limitations
- Asset management can be rather awkward, given the views for the theme are outside the
public
folder.
Changelog
Please see CHANGELOG.md.
Support
Found a bug? Please create an issue on the GitHub project page or send a pull request if you have a fix or extension.
You can also send me a message at support@intentor.com.br to discuss more obscure matters about the component.
License
Licensed under the The MIT License (MIT). Please see LICENSE for more information.