Nếu như bạn đang sử dụng một website hay blog WordPress thì vấn đề nan giải. Đó chính là nếu như khi chúng ta upload một tấm hình vào website wordpress của mình thì nó sẽ tự động sinh ra 3 tấm hình với kích thước khác nhau.
Từ đó nó sẽ càng ngày càng chiếm nhiều dung lượng bộ nhớ website của chúng ta. Nếu như các bạn không chỉnh các thông số trong Media -> Seting trở về bằng “0”
Vậy nếu muốn website không bị chiếm nhiều dụng lượng bộ nhớ bởi nhiều tấm hình mà chúng ta upload lên. Thì chúng ta sẽ làm cách nào để tiết kiệm dung lượng bộ nhớ?
Đó chính là chúng ta sẽ lưu trữ những tấm ảnh đó vào một dịch vụ lưu trữ ảnh bên ngoài của bên thứ 3 điển hình như: Flickr, Photobucket hay các trang cho phép bạn upload ảnh lên hiện nay.
Nhưng ngược lại đa số Theme WordPress hiện nay nay lại không sử dụng hình ảnh bên ngoài để làm hình ảnh Thumbnail cho bài viết của chúng ta được. Vì tính năng của Featured Image chỉ cho phép chúng ta sử dụng hình ảnh upload trực tiếp lên website của chúng ta mà thôi.
Vậy nếu như chúng ta muốn tiết kiệm dung lượng cho website của mình. Hay khi chúng ta đi coppy những hình ảnh ở bên ngoài cho bài viết của mình. Thì làm thế nào để WordPress tự động lấy những hình ảnh bên ngoài đó làm hình ảnh thumbnail tối ưu hình ảnh cho bài viết của chúng ta?
Để giúp các bạn có thể lấy những hình ảnh bên ngoài làm hình ảnh đại điện thumbnail cho bài viết trong WordPress. Thì hôm nay iHuongDan Blog sẽ hướng dẫn các bạn một cách có thể giúp các bạn lấy những hình ảnh bên ngoài website của mình để làm ảnh thumbnail cho bài viết của mình.
Cách lấy ảnh bên ngoài làm ảnh thumbnail
Bước 1: Thêm code
Đầu tiên chúng ta vẫn sẽ sử dụng hình ảnh đầu tiên trong bài viết của mình để làm hình ảnh thumbnail. Nhưng chúng ta sẽ bóc tách link hình ảnh đầu tiên đó. Dù cho hình ảnh đó có là hình ảnh nằm trong website của mình hay là hình ảnh ở ngoài đi chăng nữa.
Sau đó chúng ta sẽ thay thế hàm mặc định lấy hình ảnh thumbnail trong WordPress. Mặc định là hàm the_post_thumbnail()
Các bạn thêm đoạn code sau vào file index.php trong thư mục theme của các bạn đang sử dụng:
[php]function get_first_image() { global $post, $posts; $first_img = ”; ob_start(); ob_end_clean(); $output = preg_match_all(‘/<img.+src=[\’"]([^\’"]+)[\’"].*>/i’, $post->post_content, $matches); $first_img = $matches[1][0]; if(empty($first_img)) { $first_img = "/path/to/default.png"; } return $first_img; }[/php]
Bước 2: Thay thế hàm gọi ảnh
Tại file index.php mà chúng ta đang mở hiện tại. Các bạn tìm và thay thế hàm gọi hình ảnh mặc định thành hàm sau. Mặc định đó chính là the_post_thumbnail() thay thế thành hàm:
[php]<img src="<?php echo get_first_image(); ?>" alt="<?php the_title(); ?>" />[/php]
Kết luận
Như thế là các bạn đã hoàn thành xong công đoạn việc lấy hình ảnh bên ngoài làm hình ảnh thumbnail cho WordPress của mình rồi.
Ngoài ra các bạn có thể làm tương tự với các file khác như file: archive.php, category.php, tag.php để lấy hình ảnh bên ngoài làm hình ảnh thumbnail cho các category hay tag nếu cảm thấy cần thiết nhé!
Chúc các bạn thành công