Tôi đã sử dụng trang này rất nhiều để giải quyết vấn đề của mình, nhưng lần này tôi đã không thành công trong việc tìm kiếm và trả lời cho vấn đề của mình.
Tôi nhận được và vòng lặp vô hạn khi sử dụng wp_update_post
bên trong một hàm được gọi save_post
. Tôi biết rằng đây là một vấn đề phổ biến, nhưng tôi không thể tìm ra cách tránh nó.
Tôi muốn lưu thứ tự các bài đăng của mình (thuộc loại 'phần'). Vì vậy, tôi đã tạo một hộp meta tùy chỉnh có chứa một số phần tử html có thể sắp xếp. Trong mỗi phần tử có một thẻ đầu vào ẩn với name = 'partorder []'. Vì vậy, khi tôi nhấp vào tiêu chuẩn 'Cập nhật' của WordPress, một mảng chứa tất cả ID của các bài đăng (theo thứ tự) sẽ được gửi qua POST. Vì vậy, đây là mã nơi tôi lấy mảng và muốn lưu thứ tự:
// Update section sort order
$sectionorder = $_POST['sectionorder'];
if (isset($sectionorder)) { // Avoid error if there is no sections added yet
foreach( $sectionorder as $no => $sectionID ) {
$post_update = array();
$post_update['ID'] = $sectionID;
$post_update['menu_order'] = $no;
wp_update_post( $post_update );
}
}
Nhưng vấn đề là nó bắt đầu một vòng lặp vô hạn. Làm thế nào để tôi tránh điều đó? Có lẽ tôi có thể làm điều đó theo một cách hoàn toàn khác?
Đánh giá cao sự giúp đỡ của bạn!