網頁

2017年6月13日 星期二

Wordpress ajax實作問題

使用wordpress的ajax一般都會hook兩個action,一個開頭為wp_ajax_,一個開頭為wp_ajax_nopriv_,後頭再加上action的名稱。前者是需要login才能使用,後者是不需要。一般使用上,若是覺得不需要login即可使用的ajax功能,會覺得直接使用wp_ajax_nopriv_即可,但實際上發現,未登入至後台是可以正常使用,一旦使用者登入後台沒登出,此功能立即回傳0無作用。對一般使用者而言,會是重大意外事故。

結論:不管是否需要登入,兩個action都要hook,才不會有意外發生。