Listen Sie Benutzer nach Geburtsjahr auf, indem Sie eine foreach-Schleife verwenden, um Jahre und Daten dynamisch zu füllen

Ich habe einen benutzerdefinierten Meta-Schlüssel namens “date_of_birth”

Ich versuche, eine Tabelle der Benutzerzahlen für jedes Jahr basierend auf diesem Wert zu erstellen.

Ich habe diesen Code, um nach einem bestimmten Jahr zu zählen und um das Alter für einen zu hohen Test zu berechnen:

$usercount = get_users(array('meta_key' => 'date_of_birth', 'meta_value' => '1991', 'count_total' => true, 'meta_compare' => 'LIKE')); //count how many were born in 1991 $countfor1991= count($users); //get age for over under test $birthday = $user->date_of_birth; $age = date_diff(date_create($birthday), date_create('today'))->y; 

Was ich brauche, ist eine Art von Schleife, die alle Benutzer mit metakey “date_of_birth” bekommt und dann jedes Jahr durchläuft, um das folgende Diagramm zu erstellen:

 YEAR TOTAL OVER18 UNDER18 2017 5 3 2 2016 2 1 1 ETC... so on .. so forth 

Aber ich brauche den Tisch, um dynamisch zu sein, damit nächstes Jahr das aktuelle Jahr 2018 zum Anfang hinzugefügt wird und weiter geht …

Ich dachte, vielleicht würde ein WP_Query funktionieren, aber ich kann auch nicht den richtigen Code dafür finden.

Solutions Collecting From Web of "Listen Sie Benutzer nach Geburtsjahr auf, indem Sie eine foreach-Schleife verwenden, um Jahre und Daten dynamisch zu füllen"

Also triggerse ich dies, indem ich regelmäßig get_user () machte und es in eine for-Schleife von Jahren stellte und den get_user jedes Jahr aktivierte.

 $currentYear = date('Y'); $years = range($currentYear, 1900); foreach($years as $year){ $TotalArray = get_users(array('meta_key' => 'date_of_birth', 'meta_value' => $year, 'count_total' => true, 'meta_compare' => 'LIKE', 'role__in' => 'members')); $thisYearsTotal = count($TotalArray); //echo some  and  html for formatting. }