WordPress插件:需要在插件激活后立即启动一个功能

WordPress插件:需要在插件激活后立即启动一个功能,wordpress,plugins,installation,cron,Wordpress,Plugins,Installation,Cron,我需要我的插件在插件安装后立即运行一个函数。我之所以需要在安装之后而不是在安装期间运行该功能,是因为在插件被激活之前,所有挂钩都不起作用,我需要与第三方服务器进行一些额外的安装同步,我需要这些挂钩 到目前为止,我还没有找到任何符合我要求的东西。据我所知,根据法典所说,cron的功能只有在有人访问该网站后才会启动。这是一个“不”字。插件不能等待一些“随机”的时间段。这甚至可能是一个严重的安全风险。你能用吗?瑟兰,我也有同样的问题。我还没有想出一个好的解决方案,所以我正在做的是插件激活我正在设置一个

我需要我的插件在插件安装后立即运行一个函数。我之所以需要在安装之后而不是在安装期间运行该功能,是因为在插件被激活之前,所有挂钩都不起作用,我需要与第三方服务器进行一些额外的安装同步,我需要这些挂钩


到目前为止,我还没有找到任何符合我要求的东西。据我所知,根据法典所说,cron的功能只有在有人访问该网站后才会启动。这是一个“不”字。插件不能等待一些“随机”的时间段。这甚至可能是一个严重的安全风险。

你能用吗?

瑟兰,我也有同样的问题。我还没有想出一个好的解决方案,所以我正在做的是插件激活我正在设置一个更新选项,然后一旦设置页面被访问,我正在检查获取选项来检查我的一次性设置,如果它存在,我会关闭函数并删除选项。这对你来说不太合适,但是。。。您可能能够了解如何应用此筛选器:

或者你可以用我的方法。试试这个:

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\u activation\u钩子时或之后立即启动一些其他钩子。这是一个不错的建议。我想现在就只能这样了。