Đây là là trả lời bình luận của Cameron về vấn đề của việc sử dụng nhiều phần mở rộng trong ánh sáng của CakePHP thực tế không cho phép bạn chỉ định nhiều tiện ích.
Tôi đang sử dụng Mustache cho một trang web duy nhất có sử dụng Merb, rails2, rails3 và CakePHP cho các phần khác nhau của trang web. Các trang web bánh "nhận" tập tin ria mép cho các yếu tố bố trí phổ biến nhưng các mẫu này có một phần mở rộng tập tin '.mustache' mà trang web bánh của tôi sẽ không nhận ra. Cách giải quyết của tôi về cơ bản là những gì dhofstet gợi ý chỉ đóng khung trong bối cảnh của usecase cụ thể của bạn. Tóm lại, hãy tạo một trình bao bọc trông giống như sau:
<?
$tmp = $this->ext;
$this->ext = '.mustache';
?>
<?= $m->render($this->renderElement('moznav/advanced_header'), array('foo' => $bar)) ?><br />
<? $this->ext = $tmp; ?>
Khi dòng trở về người gọi, bạn tiếp tục sử dụng phần mở rộng tệp gốc của mình.
Điều gì về nhiều tiện ích mở rộng như chấp nhận cả .php và .ctp là có thể? – Cameron
Bạn không thể chỉ định nhiều tiện ích mở rộng, tuy nhiên có vẻ như có sự cố quay trở lại .ctp nếu không tìm thấy tệp .php. Điều này không làm việc cho các yếu tố, mặc dù (tôi đã mở một vé cho vấn đề này). – dhofstet