我如何每月通过电子邮件向某人发送新的页面密码?

时间:2020-02-14 作者:samerivertwice

我想每月通过电子邮件将新页面密码发送给某人。我看不出有什么原因this 无法调整。

首先,我想我需要改变这一点:

add_filter( \'cron_schedules\', function( $schedules )
{
    // Our custom cron interval:
    $schedules[\'every_2nd_day\'] = array(
        \'interval\'  => 2 * DAY_IN_SECONDS,
        \'display\'   => \'Once every second day\'
    );

add_filter( \'cron_schedules\', function( $schedules )
{
    // Our custom cron interval:
    $schedules[\'every_month\'] = array(
        \'interval\'  => 1 * MONTH_IN_SECONDS,
        \'display\'   => \'Once every Month\'
    );
然后在引用“every\\u 2nd\\u day”的地方再次更改代码。那么,我该如何a)设置自动电子邮件,以及b)将代码打包为插件并安装它?

这就是我所需要做的。我假设这个脚本仍然是安全的,并且对当前的Wordpress有效?

1 个回复
SO网友:Cadu De Castro Alves

首先,您应该将cron包装到一个方法中:

function cronjob_once_every_month() {
    // Our custom cron interval:
    $schedules[\'every_month\'] = array(
        \'interval\'  => 1 * MONTH_IN_SECONDS,
        \'display\'   => \'Once every Month\'
    );
}
a)设置自动电子邮件

然后,您应该安排一项行动:

if ( ! wp_next_scheduled( \'cronjob_once_every_month\' ) ) {
    wp_schedule_event( time(), \'email_password_every_month\', \'cronjob_once_every_month\' );
}
最后,您应该挂接一个操作来启动cron:

add_action( \'cronjob_once_every_month\', \'email_password_every_month\' );
function email_password_every_month() {
    wp_mail( $to, $subject, $message, $headers, $attachments );
}
Tip: 你应该setup SMTP 因为wp\\u mail()不保证用户收到电子邮件。

b) 将代码打包为插件并安装?

请阅读official documentation.

相关推荐

password_reset doesnt work

我试图在密码重置后使用$\\u POST方法提交操作下面是代码add_action( \'after_password_reset\', \'action_function\', 10, 2 ); function action_function( $user, $new_pass ){ if (isset( $_POST[\'password_1\'] ) ) { update_user_meta($user->ID, \'user_pass2\',