Khi ta sử dụng các plugin popup thì sẽ không hiển thị phần chú thích của hình ảnh. Vì vậy trong bài viết này mình sẽ hướng dẫn các bạn hiển thị chú thích hình ảnh khi popup ảnh.

Các bước thực hiện:

Tạo thư viện ảnh trong chi tiết bài viết

Thêm thư viện ảnh

Chọn ảnh để thêm vào thư viện ảnh Chọn ảnh để thêm vào thư viện ảnh

Click vào từng hình để nhập chú thích cho ảnh

Click vào từng hình để nhập chú thích cho ảnh

Sau đó nhấn “Tạo một bộ sưu tập mới”

Tuỳ chỉnh thư viện ảnh

Tuỳ chỉnh thư viện ảnh

Lưu ý: Bạn phải chọn liên kết tới: tập tin đa phương tiện để khi click vào ảnh có thể hiện ra popup.

Sau đó nhấn: “Chèn bộ sưu tập”

thêm thư viện ảnh vào chi tiết bài viết trong wordpress

Bổ sung thư viện popup hình ảnh và chú thích hình ảnh

– Thêm thư viện popup hình ảnh: ở đây mình sử dụng thư viện: Magnific Popup

Trong file functions.php theme của bạn bạn thêm đoạn code sau để thêm thư viện popup hình ảnh

add_action( 'wp_enqueue_scripts', 'load_styles_frontend' );
function load_styles_frontend() {
  if (is_single()) {
    wp_enqueue_script('magnific-popup', get_stylesheet_directory_uri().'/js/jquery.magnific-popup.min.js', array('jquery'));
    wp_enqueue_style( 'magnific-popup', get_stylesheet_directory_uri().'/css/magnific-popup.css' );
  }

  wp_enqueue_script( 'custom-js', get_stylesheet_directory_uri().'/js/custom.js');
}
  • if (is_single()) : mình chỉ thêm thư viện popup trong trang chi tiết bài viết
  • get_stylesheet_directory_uri(): hàm lấy đường dẫn đến theme của bạn
    • Nếu bạn nào sử dụng child theme thì dùng hàm: get_stylesheet_directory_uri()
    • và ngược lại nếu bạn sử dụng theme chính thì sử dụng hàm: get_stylesheet_uri()
  • Để kiểm tra việc nhúng thư viện chính xác hay chưa bạn nhấn (f12) để kiểm tra console => nếu không xuất hiện lỗi => bạn đã nhúng thư viện thành công

Trong file custom.js bạn thêm đoạn mã sau

jQuery(document).ready(function($){
	$('.gallery').magnificPopup({
		delegate: 'a',
		type: 'image',
		tLoading: 'Loading image #%curr%...',
		mainClass: 'mfp-img-mobile',
		gallery: {
			enabled: true,
			navigateByImgClick: true,
			preload: [0,1] // Will preload 0 - before current, and 1 after the current image
		},
		image: {
			tError: '<a href="%url%">The image #%curr%</a> could not be loaded.',
			titleSrc: function(item) {
				var caption = "#" + item.el.find('img').attr('aria-describedby');
				return  $(caption).text();
			}
		}
	});
});

 

 

Bài viết liên quan

post-no-image

Chia sẻ một số thư viện loading css đẹp

giai-phap-chinh-css-khong-bi-luu-cache-trinh-duyet

Giải pháp tốt khi chỉnh sửa css mà không sợ bị lưu cache trình duyệt

post-no-image

Một số css tùy biến thẻ input type: select, number

post-no-image

Tắt lazyload cho một số hình ảnh

post-no-image

Tuỳ biến layout YITH WooCommerce Wishlist

post-no-image

Một số hook hoặc filter thường sử dụng trong plugin WPML