Hallo alle zusammen.
habe mir ein kleines Plugin geschrieben, welches 1x täglich schaut ob aktualisierungen vorhanden sind.
Wenn ich die Datei manuell aufrufe funktioniert alles wunderbar und ich bekomme auch eine E-Mail.
Nun habe ich im Plugin ein cron angelegt welcher 1x täglich laufen soll. Nur habe ich das Gefühl das er diesen nicht ausführt. Ich bekomme auch keine Mail mehr zugesandt. Im folgenden einmal der Code vielleicht habt ihr eine Idee?
PHP
<?php
/*
Plugin Name: Update reminder
Description: Checks for updates and sends mail
Version: 1.0
*/
defined( 'ABSPATH' ) or die( 'Are you ok?' );
$start_reminder = new UpdateReminder();
class UpdateReminder{
public function __construct() {
register_activation_hook( __FILE__, array( $this, 'updateReminder_activate' ) );
register_deactivation_hook(__FILE__, array( $this, 'updateReminder_deactivation' ) );
add_action( 'updateReminderEvent', array( $this, 'getUpdateStatus' ) );
}
public function getUpdateStatus(){
$status = wp_get_update_data();
if ( $status['counts']['total'] != 0 ) {
$mail = get_option( 'admin_email' );
$blogname = get_option( 'blogname' );
if ( $mail ) {
wp_mail(
$mail,
'Update Benachrichtigung ' . $blogname,
'Für deinen Blog "' . $blogname . '" stehen ' . $status['counts']['total'] . ' Updates zur Verfügung.<br>
' . $status['counts']['plugins'] . ' Plugin Updates<br>
' . $status['counts']['themes'] . ' Theme Updates</br>
' . $status['counts']['wordpress'] . ' WordPress Core Updates<br>
' . $status['counts']['translations'] . ' Übersetzungs Updates',
'Content-Type: text/html; charset=UTF-8'
);
}
}
}
public function updateReminder_activate(){
if (! wp_next_scheduled ( 'updateReminderEvent' )) {
wp_schedule_event( time(), 'daily', 'updateReminderEvent' );
}
}
public function updateReminder_deactivation(){
if ( wp_next_scheduled( 'updateReminderEvent' ) ) {
wp_clear_scheduled_hook( 'updateReminderEvent' );
}
}
}
Alles anzeigen