WordPress升级时的电子邮件用户

时间:2011-07-07 作者:Elliott

我是WordPress的新手,我正在尝试自定义我的主题,以便在需要升级时向自己发送电子邮件。我不想使用插件,因为这意味着我必须为每个WordPress站点安装插件。下面的代码基于update notifier 插件。

add_action(\'check_updates_daily\', \'check_updates\');

function check_updates_daily() {
    if (!wp_next_scheduled(\'check_updates\')) {
        wp_schedule_event(time(), \'daily\', \'check_updates\');
    }
}

function check_updates() {

    $update_core = get_site_transient( \'update_core\' );
    if (!empty($update_core) && isset($update_core->updates) && is_array($update_core->updates)
            && isset($update_core->updates[0]->response) && \'upgrade\' == $update_core->updates[0]->response)
     {
        $newversion = $update_core->updates[0]->current;
        $oldversion = $update_core->version_checked;
        $blogurl = esc_url( home_url() );
        $message = "It\'s time to update the version of WordPress running at $blogurl from version $oldversion to $newversion.\\n\\n";

        // don\'t let $wp_version mangling plugins mess this up
        if (!preg_match( \'/^(\\d+\\.)?(\\d+\\.)?(\\d+)$/\', $oldversion)) {
            include( ABSPATH . WPINC . \'/version.php\' );
            $message = $wp_version == $newversion ? \'\' : "It\'s time to update the version of WordPress running at $blogurl from version $wp_version to $newversion.\\n\\n";
        }       
    }       

    //Send email
    if (!empty($message)) {     

        $subject = apply_filters( \'updatenotifier_subject\', \'Updates are available for \'.get_bloginfo(\'name\').\'.\');

        wp_mail(\'[email protected]\', $subject, $message);     
    }
}
我确实将它改为每小时检查一次,以测试它是否有效,但我没有收到任何电子邮件,我还计划只发送一封电子邮件,而不检查更新,但这也不起作用。

感谢您的帮助,谢谢

2 个回复
最合适的回答,由SO网友:Scott 整理而成

我将您提到的上述插件派生为WP Updates Notifier

也许你想看看这个?

如果你想把它包含在你的主题中,你所要做的就是复制插件文件并放在你的主题函数文件中。

如果您需要修改此插件的进一步帮助,请留下评论,我会看看我能做些什么。

SO网友:EAMann

无论您是使用已有的插件还是编写自己的插件,您仍然需要在您设置的每个WP站点上安装它。不要浪费时间重新发明轮子,只需使用你已经找到的插件。

结束

相关推荐

Updates for a private plugin?

如果我写一个私有插件,有没有办法使用WordPress自动更新机制来更新它 我想封装这个功能,但它是我自己的5个博客特有的,所以它不是公共插件资源的好候选。但我喜欢这种简单的更新机制 有没有办法做到这一点