Chức năng chính
Mục đích để cập nhật ngày đăng những sản phẩm và bài viết đã để dưới dạng riêng tư lâu ngày được cập nhật thành ngày hiện tại. Giúp cho google hiểu được những nội dung này là nội dung mới, chứ không phải nội dung cũ.
Cách sử dụng
Các bạn bỏ code vào file function.php và lưu lại. Các biến cần lưu ý
post_type
: Đổi thành post type cần random: vd: post cho bài viết, product cho sản phẩmpost_status
: Trạng thái của nội dung, bạn có thể thay thành publish để cập nhật những nội dung đã được xuất bảnbulk_update_product_dates(0, 60);
: Số 0 thể hiện cho số lượng nội dung sẽ bỏ qua, và 60 thể hiện số lượng nội dung chạy mỗi lầnorderby
: sắp xếp điều kiện, trong code là theo ngày thángorder
: sắp xếp thứ tự, trong code đang set theo thứ tự tăng dần
các chỉ số bạn cần quan tâm thì mình đã chú thích rõ trong code, bạn chỉ cần thay theo ý bạn là ok. Nên giới hạn số lượng mỗi lần chạy tuỳ vào cấu hình server và gỡ code sau khi đã thực hiện xong. Chúc bạn thành công nhé!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
function bulk_update_product_dates($offset_products, $number_to_update) { global $wpdb; // Get the current date and time $current_date = current_time('mysql'); // Fetch product IDs ordered by date (oldest first) $product_ids = $wpdb->get_col(" SELECT ID FROM {$wpdb->posts} WHERE post_type = 'product' AND post_status = 'private' ORDER BY post_date ASC "); // Update the published dates for the specified number of products for ($i = $offset_products; $i < $offset_products + $number_to_update && $i < count($product_ids); $i++) { $product_id = $product_ids[$i]; // Update the product published date directly in the database $wpdb->query(" UPDATE {$wpdb->posts} SET post_date = '$current_date', post_date_gmt = '$current_date' WHERE ID = $product_id "); echo "Product $product_id updated successfully.<br>"; } echo "Product published dates updated successfully.<br>"; } bulk_update_product_dates(0, 60); |