Tôi đã kích hoạt tập tin và nén CSS của Drupal . Tôi nên làm gì để loại trừ các tệp css nhất định khỏi bị tổng hợp và nén? Cảm ơn.
Tôi đã kích hoạt tập tin và nén CSS của Drupal . Tôi nên làm gì để loại trừ các tệp css nhất định khỏi bị tổng hợp và nén? Cảm ơn.
Câu trả lời:
Để dừng một tập tin đang được tổng hợp, bạn có thể thêm một cờ vào lệnh drupal_add_css () để tải tập tin. Để làm điều này, hãy tìm nơi CSS được thêm vào và thêm array('preprocess' => FALSE)
vào sau kiểu, ví dụ:
drupal_add_css('/fonts/fonts-min.css', array('preprocess' => FALSE));
Ngoài ra, CSS bên ngoài không bao giờ được nén, vì vậy nếu bạn thay đổi CSS thành URL tuyệt đối của tệp thì nó sẽ không được nén.
drupal_add_css('http://mysite/css/fonts-min.css');
Nếu bạn muốn thay đổi CSS được bao gồm từ tệp .info, tốt nhất nên thêm nó dưới dạng tệp bên ngoài có _preprocess_html
trong template.php. Điều này được giải thích rõ trong phần 'Thêm biểu định kiểu bên ngoài' trên trang này .
array('preprocess' => FALSE));
sao? đó là những gì tài liệu nói.
Tôi cũng gặp vấn đề này, nhưng thay vì sử dụng drupal_add_css tôi đã đính kèm các tệp của mình vào một trang như thế này:
function module_preprocess_page(&$variables) {
$variables['some_element']['#attached'] = array(
'css' => array(
'path/to/css/style.css',
)
)
}
Trong khi đào mã lõi đính kèm, tôi thấy rằng chúng ta có thể sử dụng giải pháp của John C ở đây giống như sau:
function module_preprocess_page(&$variables) {
$variables['some_element']['#attached'] = array(
'css' => array(
'path/to/css/style.css' => array(
'preprocess' => FALSE,
)
)
)
}
Làm thế nào tôi làm điều này thực sự bẩn trên Drupal 8 vì nó vẫn còn trong dev và hiện tại có quá nhiều thay đổi:
Tệp THEMENAME.theme :
function THEMENAME_preprocess_html(&$variables) {
$variables['css_address'] = drupal_get_path('theme', 'themename') . '/cssfile.css';
}
Và đã thêm một cái gì đó như thế này vào thẻ đầu trong tệp mẫu html.html.twig :
<link rel="stylesheet" type="text/css" href="{{ css_address }}">
Sẽ sớm có cách tốt hơn.