Mình viết 1 hàm đơn giản để update post khi truyền dữ liệu vào. Cụ thể function showdes() { $my_post_update = array( 'ID' => get_the_ID(), 'post_content' => str_replace("[des]","aaa",get_the_content()), ); wp_update_post( $my_post_update ); $des = get_the_content(); return $des; } add_filter('the_content', 'showdes'); Hàm này đơn giản chỉ cần thay content aaa bởi short code [des] có sẵn. Mình import tầm 100 posts có content chỉ là [des] để test. Nhưng khi view post thì frontend chỉ show [des] nhưng lại ko show "aaa" mình mới update. Trong khi backend thì nó có update rồi, mình nghĩ do cơ chế cache của thằng wp nên nó show luôn old data mà ko show cái mình cần. Mấy bro có giải pháp nào chỗ này cho nó show ra ngay lập tức trong 1 lần load post ko ạ. Mình cảm ơn. Mình toàn F5 nó mới ra @@. Ko biết do code mình có vấn đề hay do thằng wp nữa , anh em xem dùm mình phát. Thank ae. À mình ko cài bất cứ plugin cache nào nha ae
Nếu là cache thì phải xóa cache rồi cụ ơi. Việc thay đổi nội dung cũ sang short code trên wp em đã từng làm, lúc đó thì web không cache nên không gặp hiện tượng cần phải f5 hay ctrl+f5 gì cả
Có vẻ như mấy cái short code nầy nó cần lần đầu tiên vô để active rồi mới ghi vô cái database. Chữa cháy có thể dùng 1 cái tool nòa đo query all post 1 lần để nó acvite dc hem?