web-dev-qa-db-de.com

Wie erhalte ich die aktuelle Site-ID? (WPMU)

Ich benutze WordPress mit MU aktiviert. Ich habe eine Funktion hier gefunden, die ein Objekt mit der aktuellen Seiten-ID zurückgeben soll. Für alle Websites wird jedoch 1 zurückgegeben.

<?php get_current_site(); ?>
3
gdaniel

Sie haben Recht, get_current_site()->blog_id gibt 1 zurück, da es sich auf das Netzwerk bezieht.

Um die aktuelle Site- (Blog-) ID zu erhalten, können Sie folgendermaßen vorgehen:

<?php echo get_current_blog_id(); ?>

Außerdem können Sie die aktuellen Site- (Blog-) Details wie folgt abrufen:

<?php var_dump(get_blog_details()->blog_id); ?>
3
Sven

Überprüfen Sie zunächst mithilfe von, ob der Benutzer zur aktuellen Site gehört

 <?php is_user_member_of_blog( $user_id, $blog_id ); ?>

Nachdem Sie die ID des Benutzers erhalten haben, erstellen Sie eine Benutzerrolle

$user = new WP_User( $user_id );
if ( $user ) {
$roles = $user->roles; 

erstellen Sie zuletzt Beiträge für jeden Benutzer, indem Sie eine Rolle in args hinzufügen. Nicht getestet, aber ich mache einen Trick für dich.

<?php
$args1 = array(
    'role' => 'subscriber',
    'orderby' => 'user_nicename',
    'order' => 'ASC'
);
$subscribers = get_users($args1);
echo '<ul>';
foreach ($subscribers as $user) {
    echo '<li>' . $user->display_name.'['.$user->user_email . ']</li>';
}
echo '</ul>';

?>
0
Zaheer Abbas