如果在一段时间内没有帖子,则生成电子邮件

时间:2011-09-28 作者:GavinR

如果/当过去1周内博客上没有帖子时,我希望向特定的电子邮件地址列表发送电子邮件。你有什么想法吗?

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

您需要设置cron job 每天检查一次,看看最新的帖子是否超过七天。

所以,有些地方在插件文件中。安排新活动。然后加入那个事件。获取发布日期,将其转换为unix时间戳,并将其与当前时间进行比较。

<?php
register_activation_hook( __FILE__, \'wpse29671_activation\' );
function wpse29671_activation()
{
    wp_schedule_event( time(), \'daily\', \'wpse29671_cron\' );
}

add_action( \'wpse29671_cron\', \'wpse29671_maybe_send_email\' );
function wpse29671_maybe_send_email()
{
    // get the latest post
    $posts = get_posts( array( \'numberposts\' => 1 ) );
    if( ! $posts ) return;

    // Latest posts date as a unix timestamp
    $latest = strtotime( $posts[0]->post_date );

    // how long has it been?
    $diff = ( time() - $latest ) / ( 60 * 60 * 24 );

    // if it has been more than 7 days, send the email
    if( $diff >= 7 )
    {
        wp_mail( \'[email protected]\', \'Better Write a Post!\', \'Hey, you should go write a blog post or something\' );
    }
}
作为插件:https://gist.github.com/1246814

或者,您可以使用DateTime 要进行时间比较或仅使用的对象this plugin (只是说,你自己想出来更有趣)。

结束

相关推荐

某些操作在运行cron时失败

我和Wordpress发生了激烈的争论,这是我把电脑扔出窗口之前的最后一次通话。我这里有一个插件,可以将XML提要导出到Wordpress帖子中。帖子有一个本地保存的图像,然后在帖子内容的开头插入显示图像的HTML,然后使用wp\\u insert\\u post插入Wordpress。不过我有个小问题。手动打开脚本时,脚本工作正常。但一旦cron触发,帖子就会很好地导入,但图像不会保存在本地,并且图像的HTML不会出现在帖子内容中。我真的没有办法了。我认为这与权限有关,而且这些帖子是在没有作者的情况下导