[Wordpress] Anh em cho mình hỏi

Discussion in 'Hỏi Đáp Kỹ Thuật' started by Mr.BTD, Feb 11, 2019.

  1. Mr.BTD

    Mr.BTD Moderator Staff Member

    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
     
    Last edited: Feb 11, 2019
  2. Nai

    Nai MiddleMan Staff Member

    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ả :)
     
  3. Mr.BTD

    Mr.BTD Moderator Staff Member

    Ko cụ, mình ko cài bất cứ plugin cache nào
     
  4. Hoa Mãn Lâu

    Hoa Mãn Lâu Trưởng Môn

    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?
     
  5. Mr.BTD

    Mr.BTD Moderator Staff Member

    ừm cụ vậy cũng đc nhưng làm auto thì mắc công chạy đi chạy lại tốn time
     
  6. Hoa Mãn Lâu

    Hoa Mãn Lâu Trưởng Môn

    Viết luôn 1 con bot auto query các bài viết trong site thôi. nhanh mà. curl tí là xong hà