我希望你能幫助我解決這個問題。
我有通過 REST API 更新庫存數量的 Woocommerce,但是我使用快取插件 WP Fastest Cahe,并且只有在 API 更新插件的庫存數量時由 WP Admin(后端)手動更新時,它才會清除產品快取不會觸發產品快取清除。但是,它們確實為此目的提供了一個鉤子,即//它清除了 ID 為 1923 wpfc_clear_post_cache_by_id(1923) 的帖子;解釋這一切的鏈接是這個https://www.wpfastestcache.com/tutorial/delete-the-cache-by-calling-the-function/
我不是程式員,但下面的代碼有效嗎?當有 API 更新時,我該怎么做才能觸發鉤子?
有小費嗎?
我將非常感謝一些幫助:)
add_action( 'woocommerce_update_product', 'remover_cache_produto', 10, 1 );
function remover_cache_produto($product_id) {
$product = wc_get_product($product_id);
wpfc_clear_post_cache_by_id($product_id); //clean cache
}
uj5u.com熱心網友回復:
您正在使用woocommerce_update_product
操作鉤子,當您從 wordpress 的后端以及從 rest api 更新產品時會觸發該鉤子。
remover_cache_produto
因此,當您通過 rest api 更新產品時,會執行具有該名稱的函式。您正在使用正確的動作掛鉤。
在您的函式中,您創建一個$product
未使用的變數。所以你可以擺脫那條線。
將代碼放入functions.php
主題檔案或創建一個小的 wordpress 插件以使其作業。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/482028.html
標籤:php WordPress woocommerce 钩woocommerce