Xây dựng lại hình ảnh từ phong cách hình ảnh


58

Tôi có một kiểu hình ảnh trong Drupal 7. Tôi đã đính kèm một số hình ảnh vào một nút và hiển thị hình ảnh dựa trên phong cách này. Sau đó tôi đã thay đổi các hiệu ứng trên kiểu ảnh này nhưng các ảnh hiện có không được tạo lại với các hiệu ứng kiểu ảnh mới. Họ hiển thị với các hiệu ứng phong cách hình ảnh cũ.

Nếu tôi đính kèm hình ảnh mới, họ sử dụng các hiệu ứng mới. Xóa một hình ảnh hiện có và tải lên lại khiến hình ảnh sử dụng các hiệu ứng cũ.

Hướng dẫn sử dụng (không chính xác tôi giả sử) nói rằng chỉ lưu kiểu ảnh sẽ gây ra việc xây dựng lại: http://drupal.org/documentation/modules/image

Tôi đã xóa bộ nhớ cache.

Làm thế nào để tôi buộc xây dựng lại?


1
Bạn đã thực sự nhấp vào nút Cập nhật kiểu khi ở trang Kiểu ảnh chưa? Tôi vừa thực hiện một vài thử nghiệm và xác minh rằng khi bạn nhấp vào nó, tất cả các tệp được tạo trong thư mục tệp sẽ bị xóa.
Khu bảo tồn Juampy

Hướng dẫn sử dụng là chính xác. Thay đổi kiểu ảnh, ví dụ bằng cách thêm, chỉnh sửa hoặc xóa hiệu ứng, sẽ xóa kiểu ảnh. Nó có thể là trình duyệt của bạn (hoặc một cái khác ở giữa) bộ đệm hoặc vấn đề quyền khi các dẫn xuất bị xóa.
fietserwin

Tôi đã sử dụng lệnh drush tùy chỉnh để tạo lại hình ảnh gist.github.com/typhonius/8599853
apostnikov

Câu trả lời:



15

Để xóa Tên kiểu ảnh trong Drupal 7 thông qua giao diện người dùng, hãy thử mô-đun đóng góp này:

http://drupal.org/project/imagestyleflush

Nó cung cấp cho bạn một tùy chọn tuôn ra cho mỗi Tên Kiểu Ảnh. Nó cũng có một tùy chọn để xóa tất cả các Tên kiểu ảnh cùng một lúc.

Khi mô-đun được bật, trong giao diện người dùng quản trị, hãy vào đây để xóa kiểu hình ảnh cụ thể:

admin/config/media/image-styles

9

Đây là một lỗi với phong cách hình ảnh. Nếu bạn đang chỉnh sửa kiểu ảnh và chỉnh sửa hiệu ứng đã có, ảnh sẽ không bị xóa khi cập nhật. Tuy nhiên, nếu bạn xóa hiệu ứng đó (tôi không nói về việc xóa kiểu ảnh - xóa hiệu ứng trong kiểu ảnh cụ thể) và tạo một hiệu ứng mới, hình ảnh sẽ bị xóa khi cập nhật.


hàm image_effect_save () không gọi image_style_flush (), vì vậy đây không phải là lỗi.
fietserwin

1
Chỉ vì một cái gì đó được gọi không có nghĩa là nó không phải là một lỗi. Chức năng không có mặt khi cần. Đó là định nghĩa của một con bọ ...
Kirkland

3

Có một cách khác, dễ dàng hơn. Đó là một sự thay thế hơn là cập nhật, nhưng nó hoạt động tốt. Bạn có thể tạo kiểu ảnh mới dựa trên kiểu cũ, nhưng với các tính năng mới (hành động hình ảnh) bạn muốn. Sau đó xóa kiểu cũ; trên trang xác nhận xóa, bạn sẽ tìm thấy một danh sách thả với các kiểu hình ảnh có sẵn, mà bạn có thể sử dụng để thay thế kiểu cũ. Đây là một chức năng thay thế phong cách hình ảnh tiêu chuẩn, tôi giả sử.


3

Chỉnh sửa kiểu bạn muốn từ admin / config / media / image-style.

Nhấp vào nút 'cập nhật kiểu' ở dưới cùng, sẽ xóa tất cả các hình ảnh được tạo hiện có trong thư mục kiểu và tạo ảnh mới.


1

nếu bạn có một mẫu tùy chỉnh và muốn tạo kiểu cho trường hình ảnh:

 $style='full_content_width';
 $path=$node->my_img_field['und']['0']['uri'];
 $style_url = image_style_url($style, $path);
  print "<img src=".file_create_url($style_url)." >";

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.