• Trang chủ
  • Phần mềm
  • Demo
  • Bảng giá
  • Dịch vụ
    • Cấu hình chiến dịch
    • Hỗ trợ chuyên nghiệp
  • Add-ons
  • Tài liệu
  • Kiến thức
  • Tài khoản
    • Đăng nhập
    • Đăng ký
  • Trang chủ
  • Phần mềm
  • Demo
  • Bảng giá
  • Dịch vụ
    • Cấu hình chiến dịch
    • Hỗ trợ chuyên nghiệp
  • Add-ons
  • Tài liệu
  • Kiến thức
  • Tài khoản
    • Đăng nhập
    • Đăng ký
Trang chủ/Kiến thức/Nâng cao/Hướng dẫn sửa lỗi lưu tệp đính kèm khi chạy plugin trên localhost
Tìm kiếm phổ biến:leech tin tức, leech truyện, leech sản phẩm

Hướng dẫn sửa lỗi lưu tệp đính kèm khi chạy plugin trên localhost

368 lượt xem 6 15/05/2019 Updated on 02/06/2019

Update, vấn đề này liên quan tới tổ chức file path trên máy tính, ở phiên bản 2.3.2 đã fix được lỗi lưu hình ảnh và metadata nhưng còn vấn đề xóa tệp tin cũ khi Thu thập lại bài viết thì bạn cần dùng code sau:

<?php
/**
 * Thực hiện hành động sau khi lưu bài viết và trước khi lưu các tệp đính kèm mới.
 * Tại thời điểm này, nếu đang thu thập lại bài viết, ta sẽ xử lý các tệp đính kèm cũ.
 * Xóa mỗi tệp đính kèm cũ ra khỏi thư mục uploads.
 */
add_action('kdn/post/after_save', 'kdn_post_after_save', 10, 10);
function kdn_post_after_save($data, $postData, $postBot, $postSaver, $siteId, $postUrl, $urlTuple, $isRecrawl, $postId, $isFirstPage) {

	// Nếu đang thu thập lại, hãy tiến hành
	if ($isRecrawl) {

		// Lấy ra tất cả tệp đính kèm cũ của bài viết
		$allAttachment = get_attached_media('', $postId);

		// Bắt đầu xử lý từng tệp đính kèm
		foreach ($allAttachment as $attachment) {

			// Lấy ra meta data của tệp đính kèm
			$attachmentMetadata = wp_get_attachment_metadata($attachment->ID, true);

			// Chuẩn bị đường dẫn tới thư mục chứa tệp đính kèm
			// (WordPress mặc định sẽ phân thư mục theo dạng:
			// ../wp-content/uploads/{năm}/{tháng}/tep-dinh-kem.jpg)
			// Lấy ra ../wp-content/uploads/{năm}/{tháng}/
			preg_match('/^(.+?)\/(.{4})\/(.{2})\//', $attachmentMetadata['file'], $attachmentPath);
			$attachmentPath = $attachmentPath[0];

			// Lấy ra tất cả các sizes khả dụng của tệp đính kèm
			$attachmentSizes 	= isset($attachmentMetadata['sizes']) ? $attachmentMetadata['sizes'] : '';

			// Kiểm tra xem đây có phải default thumbnail hay không
			$metaPostDefaultThumbnailByMediaId = isset(get_post_meta($attachment->ID)['_post_default_thumbnail']) ?: false;

			// Nếu không phải default thumbnail, tiến hành xóa tệp đính kèm
			if (!$metaPostDefaultThumbnailByMediaId) {

				// Nếu có các sizes, tiến hành xóa các sizes của tệp đính kèm
				if ($attachmentSizes) {
					foreach ($attachmentSizes as $attachmentSize) {
						if ($attachmentSize['file']) unlink($attachmentPath . $attachmentSize['file']);
					}
				}

				// Xóa tệp đính kèm
				unlink($attachmentMetadata['file']);

			}
		}
	}
}
?>

Trong code mình đã comment rất rõ, các bạn chịu khó đọc để hiểu cách hoạt động. Chúc bạn thành công!

Bạn có thích nội dung này?

6 Có  Không
Kiến thức liên quan
  • Hướng dẫn import mã chiến dịch tự động lấy sản phẩm WooCommerce
  • Vượt qua cơ chế anti-bot của CloudFlare – bypass cloudflare JS challenge
  • Callback chuyển đổi chữ hoa thành chữ thường và in hoa chữ cái đầu tiên
  • Không phân tích và lưu ảnh đại diện khi thu thập lại
  • Hiểu về Yandex Translator trong KDN Auto Leech
  • Hướng dẫn lấy Yandex Translator API
Bình luận

Bạn phải đăng nhập để gửi phản hồi.

Nâng cao

  • Hướng dẫn sửa lỗi lưu tệp đính kèm khi chạy plugin trên localhost
  • Vượt qua cơ chế anti-bot của CloudFlare – bypass cloudflare JS challenge
  • Callback chuyển đổi chữ hoa thành chữ thường và in hoa chữ cái đầu tiên
  • Không phân tích và lưu ảnh đại diện khi thu thập lại
  • Thay đổi post_modified và post_date khi cập nhật (thu thập lại) bài viết
  • Gán post meta cho bài viết con là ID của bài viết cha
Tất cả: 9  

Kiến thức mới

  • Hướng dẫn import mã chiến dịch tự động lấy sản phẩm WooCommerce
  • Advanced DB Cleaner – Tối ưu website wordpress và dọn dẹp database
  • Tổng hợp các trường dữ liệu leech truyện với theme Madara
  • Vượt qua cơ chế anti-bot của CloudFlare – bypass cloudflare JS challenge
  • Callback chuyển đổi chữ hoa thành chữ thường và in hoa chữ cái đầu tiên

Chủ đề mới

  • Hỗ trợ cài đặt chiến dịch lấy tin từ kênh batdongsan.com.vn
  • Lỗi lặp ảnh trong bài viết.
  • Hỗ trợ cài đặt chiến dịch lấy video từ kênh youtube
  • Lazy load
  • Leech truyện không còn sử dụng được hả mọi người!

  Hướng dẫn lấy Yandex Translator API

Hiểu về Yandex Translator trong KDN Auto Leech  

Về chúng tôi

KDN Auto Leech là một phần mềm mở rộng được cài đặt và hoạt động trên website sử dụng mã nguồn mở WordPress. Với phần mềm này bạn hoàn toàn có thể tự động lấy nội dung từ bất cứ trang web nào trong bất kỳ lĩnh vực nào về website của bạn.

Thông tin

  • Giới thiệu
  • Liên hệ
  • Chính sách bảo mật
  • Điều khoản sử dụng
  • Hướng dẫn thanh toán

Danh mục

  • Add-ons
  • Bảng giá
  • Tài liệu sử dụng
  • Kiến thức mở rộng
  • Chương trình Affiliate

Tìm hiểu thêm

  • Blog tản mạn
  • Diễn đàn thảo luận
  • Câu hỏi thường gặp
  • Fanpage chính thức
  • Kênh Youtube chính thức
  • Phiên bản: 2.3.6
  • © 2020 - KDN Auto Leech

Tìm kiếm phổ biến:leech tin tức, leech truyện, leech sản phẩm