제목 | view를 이용한 테마기능 구현 | ||
---|---|---|---|
글쓴이 | 한대승(불의회상) | 작성시각 | 2014/07/23 16:30:24 |
|
|||
개발 초기에 템플릿, 레이아웃, HMVC 등을 이용하여 대비해 놓지 않았다면 참 난감 할 것입니다. 여러가지 방법이 있겠지만 간단하게 CI의 views 폴더를 확장 하여 테마를 구현하는 방법이 있습니다. 테마를 확장 했다고 하여도 기존코드(controller, views)는 수정 할 필요 없이 말이죠. * 기존 CI 애플리케이션 구조 + controllers + models + views - welcome.php* 확장된 CI 애플리케이션 구조 + controllers + models + views + spring - welcome.php + summer - welcome.php 이를 위해서는 일단 index.php를 수정해야 합니다. /* *--------------------------------------------------------------- * APPLICATION View Theme *--------------------------------------------------------------- */ define('APP_THEME', 'spring');테마명을 index.php에 define 해놓는것이죠. 이제 views의 위치만 바꾸면 됩니다. 코어를 직접 건드는 방법도 있지만 코어 버그 패치나 업데이트를 위해서 건들지 않는게 좋습니다. 대신 application/core 폴더에 MY_Loader.php 를 추가 합니다. * MY_Loader.php <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class MY_Loader extends CI_Loader { public function __construct() { parent::__construct(); // 여기서 views 폴더의 위치를 바꿉니다. $this->_ci_view_paths = array(APPPATH.'views/'.APP_THEME.'/' => TRUE); log_message('debug', "My Loader Class Initialized"); } }어때요? 참 쉽죠!! ^o^ |
|||
다음글 | 뭐..팁이라고 하긴 좀 그렇구요.. (5) | ||
이전글 | sqlite3_driver.php에 list_field... (2) | ||
토리
/
2014/07/23 17:45:21 /
추천
0
오!.. 감사합니다.^^
|