2013-12-10 4 views
1

방금 ​​Mustache.php로 시작했는데 Joomla에서 사용 된 것과 같은 무시 기능을 Mustache.php 로더에 추가하는 방법을 찾고 있습니다.부분 수를 콧수염으로 덮어 쓰는 법

"views"디렉토리에서 partials를로드 중이고 Mustache에게 먼저 "overrides"에 저장된 partials를 읽은 다음 해당 폴더에서 부분을 찾을 수없는 경우이를 찾습니다. "views"폴더에 있습니다. 순간

나는 나의 파셜를로드하는 데이 코드를 사용하고 있습니다 :

// Mustache templates path 
$mustache_tpls = $_SERVER['BASE_DIR'] . '/views'; 

// Mustache options 
$mustache_opts = array('extension' => '.tpl'); 

// Mustache cache path 
$mustache_cache = $_SERVER['BASE_DIR'] . '/tmp/cache/views'; 

// Init Mustache engine 
$m = new Mustache_Engine(
    array(
     'cache' => $mustache_cache, 
     'loader' => new Mustache_Loader_FilesystemLoader(
      $mustache_tpls, 
      $mustache_opts 
     ) 
    ) 
); 

내가 어떻게 할 수 있을까?

답변

1

당신은 the CascadingLoader 찾고 :

// Mustache templates paths 
$mustache_tpls   = $_SERVER['BASE_DIR'] . '/views'; 
$mustache_override_tpls = $_SERVER['BASE_DIR'] . '/overrides'; 

// Mustache options 
$mustache_opts = array('extension' => '.tpl'); 

// Mustache cache path 
$mustache_cache = $_SERVER['BASE_DIR'] . '/tmp/cache/views'; 

// Cascading template loader 
$mustache_loader = new Mustache_Loader_CascadingLoader(array(
    new Mustache_Loader_FilesystemLoader($mustache_override_tpls, $mustache_opts), 
    new Mustache_Loader_FilesystemLoader($mustache_tpls, $mustache_opts), 
)); 

// Init Mustache engine 
$m = new Mustache_Engine(
    array(
     'cache' => $mustache_cache, 
     'loader' => $mustache_loader 
    ) 
); 
관련 문제