uncaose / straight-ci-layout
Straight CodeIgnight Layout
v2.4
2018-07-07 11:08 UTC
Requires
- php: >=5.3.7
- codeigniter/framework: ^3.1
- matthiasmullie/minify: ^1.3
Suggests
- paragonie/random_compat: Provides better randomness in PHP 5.x
This package is not auto-updated.
Last update: 2024-04-14 04:04:04 UTC
README
- Using MY_Controller.php
Apply CI version
- Codeigniter 2.2.6 : CI2 straight-ci-layout
- Codeigniter 3.1.7
- Codeigniter 3.1.8
Method
$this->load->cache() // browser cache Default : $time=60, $Etag=NULL $this->load->css('any.css'); // chainning $this->load->js('any.js'); // chainning $this->load->view('any', []); // CI3 default $this->load->view('any', [], TRUE); // CI3 default, non chain $this->load->cache()->css()->js()->view()->view()->css()->js()->view(); // usage
Config
$config['modules'] = ['layout']; $config['asset_controller'] = 'asset'; $config['asset_hashkey'] = 'md5'; $config['asset_nocache_uri'] = TRUE; // TRUE : /asset/css/style.css?_=abc...1234, FALSE : /asset/cas/style.css $config['asset_combine'] = TRUE; // TRUE|FALSE css, js combine, TRUE: use cache if possible or query $config['asset_minify_js'] = TRUE; // require composer minify lib $config['asset_minify_css'] = TRUE; // require composer minify lib $config['adapter'] = ['adapter' => 'dummy', 'backup' => 'file']; // CI cache lib, default dummy $config['ttl'] = 2592000; // 30 day $config['view_skin'] = '_skin'; $config['view_layout'] = '_layout'; $config['view_minify'] = TRUE;
Ex Controller
Class Welcome extends MY_Controller { public function index() { $this->load ->cache(5) ->css('https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css') ->js([ ['src'=>'https://code.jquery.com/jquery-3.2.1.slim.min.js', 'integrity'=>'sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN','crossorigin'=>'anonymous'], 'https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.3/umd/popper.min.js', ])->js([ 'src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" crossorigin="anonymous"' ])->view('welcome_head') ->view('welcome_message') ->view('welcome_foot'); } }
Class Someone extends MY_Controller { public funtion _init() // Commonly used functions instead of __construct () { // code... } public function index() { $this->load->view('someone'); } }
Class Someone extends MY_Controller { public function __construct() { parent::__construct(); $this->load->driver('straight'); } public function index() { $this->load->view('someone'); } }
Ex Output
<html> <head> ... <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" /> <link rel='stylesheet' type='text/css' href='/asset/css/_layout.css' /> <link rel='stylesheet' type='text/css' href='/asset/css/_skin.css' /> <link rel='stylesheet' type='text/css' href='/asset/css/welcome_head.css' /> <link rel='stylesheet' type='text/css' href='/asset/css/welcome_message.css' /> </head> <body> <_layout.php> <_skin.php> <welcome_head.php> <welcome_message.php> <welcome_foot.php> </_skin.php> </_layout.php> <script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.3/umd/popper.min.js"></script> <script type='text/javascript' src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" crossorigin="anonymous"></script> <script type='text/javascript' src='/asset/js/_layout.js'></script> <script type='text/javascript' src='/asset/js/_skin.js'></script> <script type='text/javascript' src='/asset/js/welcome_message.js'></script> <script type='text/javascript' src='/asset/js/welcome_foot.js'></script> </body> </html>