Tôi đang sử dụng Yii2
và đã đọc khoảng theming và theme inheritance; Tuy nhiên có một số câu hỏi sau:Tìm hiểu cách Yii2 tìm tài nguyên chủ đề khi sử dụng các khoản hoàn trả
Hãy xem xét ví dụ sau:
'view' => [
'theme' => [
'pathMap' => [
'@app/views' => [
'@app/themes/current',
'@app/themes/default',
],
],
'baseUrl' => '@web/themes/current',
'basePath' => '@webroot/themes/current',
],
],
Bây giờ, hãy tưởng tượng chúng tôi yêu cầu các tập tin theme foo
; như tôi hiểu nó đầu tiên này sẽ được xem xét cho theo thứ tự sau:
@app/themes/current/foo.php
@app/themes/default/foo.php
@app/views/foo.php
Bây giờ tưởng tượng foo.php
không tìm thấy trong các chủ đề @app/themes/current/
, vì vậy nó sẽ sử dụng tệp được tìm thấy trong @app/themes/default/
.
Bây giờ, xem xét các cài đặt baseUrl
và basePath
Tôi hơi bối rối về cách chúng được sử dụng trong các trường hợp này.
Bây giờ, hãy tưởng tượng foo.php
tham chiếu tệp hình ảnh bên trong tệp, điều này sẽ không tìm cách @web/themes/current/images/myImage.jpg
thay vì @web/themes/default/images/myImage.jpg
?
Cảm ơn thông tin. Tôi không cần một dự phòng * cho các tài nguyên thực sự, nhưng tốt hơn là một cách để nó lấy tài nguyên từ cùng một thư mục có thể truy cập web mà nó tìm thấy tệp xem chủ đề trong thư mục chủ đề '@ app' chủ đề. – Brett
Bạn có thể tham khảo hàm 'applyTo()'. Nhưng nó hoạt động với đường dẫn tập tin: http://www.yiiframework.com/doc-2.0/yii-base-theme.html # applyTo() - detail –
Sau đó, bạn sẽ không nhận được dự phòng chủ đề? – Brett