我需要插件在插件安裝後立即運行一個函數。我之所以需要在安裝之後而不是在安裝過程中運行該功能,是因爲沒有任何鉤子可以工作,直到「插件」被激活後,我需要與第三方服務器進行一些額外的安裝同步,並且我需要這些鉤子。WordPress Plugin:需要在插件激活後立即觸發一個功能
到目前爲止,我找不到我想要的東西。 crons的功能,從我可以告訴的以及codex所說的,只有在有人訪問該網站後纔會觸發。這是「不」。該插件不能等待一些「隨機」時間段。它甚至可能是一個嚴重的安全風險。
我需要插件在插件安裝後立即運行一個函數。我之所以需要在安裝之後而不是在安裝過程中運行該功能,是因爲沒有任何鉤子可以工作,直到「插件」被激活後,我需要與第三方服務器進行一些額外的安裝同步,並且我需要這些鉤子。WordPress Plugin:需要在插件激活後立即觸發一個功能
到目前爲止,我找不到我想要的東西。 crons的功能,從我可以告訴的以及codex所說的,只有在有人訪問該網站後纔會觸發。這是「不」。該插件不能等待一些「隨機」時間段。它甚至可能是一個嚴重的安全風險。
蒂蘭,我有同樣的問題。我一直沒能想出一個很好的解決方案,所以我在做的是插件激活我設置了一個update_option,然後一旦設置頁面被訪問我正在檢查get_option來檢查我的一個時間設置,如果它在那裏,我關閉該功能並刪除選項。現在,這不完全是爲你工作,但是......你也許能夠弄清楚如何應用此過濾器:
,或者您可能能夠排序的使用我的方法。試試這個:
register_activation_hook(__FILE__, 'initialize_my_function');
function initialize_my_function() {
add_option('run_my_initialization',"1");
}
add_action('admin_init', 'launch_activation_script');
function launch_activation_script() {
if (get_option('run_my_initialization') == "1") {
//Do Your Init Stuff Here
delete_option('run_my_initialization');
}
}
你能使用register_activation_hook嗎?
這就是我目前用來啓動插件安裝過程的鉤子。直到該鉤子返回,我的插件中沒有其他鉤子纔會觸發,這是我遇到的問題。我需要一些其他的鉤子在運行register_activation_hook時觸發,或者之後立即啓動。 – Thirlan 2011-02-03 19:50:24
這不是一個壞建議。我想現在就得做。 – Thirlan 2011-02-24 18:25:50