Ich habe eine Weile gesucht und konnte nirgends eine Antwort auf meine Frage finden. Ich erstelle ein Mitgliederverzeichnis für eine Website eines Kulturrats und verwende das WordPress-Plugin Memberpress, um eine jährliche Abonnementgebühr zu verwalten. Ich versuche, die Benutzerinformationen auf einer einfachen Verzeichnisseite auszudrucken – derzeit gebe ich nur die Benutzerwerte in PHP wie folgt wieder:
<?php
$user_query = new WP_User_Query( array( 'role' => 'Subscriber' ) );
// User Loop
if ( ! empty( $user_query->results ) ) {
foreach ( $user_query->results as $user ) {
echo '<p>' . $user->display_name . '</p>';
echo '<p>' . $user->user_email . '</p>';
echo '<p>' . $user->user_url . '</p>';
echo '<p>' . $user->description . '</p>';
echo '<p>' . $user->subscription . '</p>';
echo '<p>' . $user->memberpress_authorized . '</p>';
$type = $user->mepr_artist_type;
for($i=0; $i<=sizeof($type); $i+=1) {
echo '<p>' . $type[$i] . '</p>';
}
}
} else {
echo 'No users found.';
}
?>
Das funktioniert alles einwandfrei und dient im Moment nur zum Testen, aber ich versuche herauszufinden, wie ich überprüfen kann, ob der Benutzer ein aktives Abonnement hat. Diese Eigenschaft ist nicht in der WP_User_Query-Datenbank gespeichert und ich weiß nicht, wie ich anderswo danach suchen kann.
Ich habe den Code im Memberpress-Plugin auf Hinweise überprüft und versucht, die Datenbank WP_mepr_members zu verwenden, die anscheinend einen Wert für den Mitgliedsnamen speichert, aber bisher war ich erfolglos. Die Memberpress-Dokumentation war nicht hilfreich, obwohl ich diese Funktion gefunden habe:
<?php if(current_user_can('mepr_auth')) {
// acf content output here
}
Es ist jedoch für das, was ich versuche, nicht sinnvoll formatiert, da es nur die Berechtigung für den aktuellen Benutzer prüft, nicht für alle Benutzer. Weiß jemand, wie man das beheben kann?
Danke.