it-swarm.com.de

System Cron-Job wird nicht ausgelöst

Ich bin neu in der WordPress-Entwicklung und benutze cron job zum ersten Mal. Ich habe ein Problem mit dem Cronjob, der nicht ausgelöst wird. Hier sind alle Schritte, die ich unternommen habe, um dies zu erreichen. Ich habe diese Zeile in meine wp-config-Datei eingefügt

define('DISABLE_WP_CRON', true);

Dann habe ich mit diesem Befehl einen Cron-Job in meinem cpanel eingerichtet.

wget -q -O - http://mywebsite.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Ich habe alle 30 Minuten ein Intervall gewählt.

Aber jetzt wird meine WordPress-Funktion von cron job nicht ausgelöst. Hier ist mein Code, den ich in functions.php meines Themas verwende.

wp_schedule_event(time(), 'hourly', 'my_hourly_event'); 
add_action('my_hourly_event', 'do_this_hourly');
function do_this_hourly() {
wp_mail( '[email protected]', 'Automatic email', 'Automatic scheduled email from WordPress to test cron');
}

Kann mir jemand sagen, was ich falsch mache, weil ich keine E-Mails von dieser Funktion erhalte. Ich werde Ihre Hilfe sehr schätzen.
Vielen Dank!

1
Awan

Sie müssen zuerst das Intervall für 30 Minuten erstellen. Filter verwenden:

add_filter('cron_schedules','my_cron_schedules', 999 );
function my_cron_schedules($schedules) {
    $schedules['thirty_min'] = array(
        'interval' => 1800, // Every 30 mins
        'display'  => __( 'Every 30 mins' ),
    );
    return $schedules;
}

Dann müssen Sie den geplanten Job ausführen:

wp_schedule_event( time(), 'thirty_min', 'your_event_hook' );

Fügen Sie dann die Aktion und die Rückruffunktion hinzu:

add_action('your_event_hook', 'do_this_hourly');
function do_this_hourly() {
    wp_mail( '[email protected]', 'Automatic email', 'Automatic scheduled email from WordPress to test cron');
}

du brauchst define('DISABLE_WP_CRON', true); in deiner wp-config.php

Dann können Sie Ihren System-Cron einplanen.

0
Annapurna