J'utilise WordPress avec MU activé. J'ai trouvé une fonction ici qui est supposée renvoyer un objet avec l'identifiant du côté actuel. Mais ça retourne 1 pour tous les sites.
<?php get_current_site(); ?>
Vous avez raison, get_current_site()->blog_id
renverra 1, car il fait référence au réseau.
Pour obtenir l'ID de site (blog) actuel, vous pouvez vous présenter comme suit:
<?php echo get_current_blog_id(); ?>
De plus, vous pouvez obtenir les détails du site actuel (blog) comme ceci:
<?php var_dump(get_blog_details()->blog_id); ?>
Tout d’abord, vérifiez si les utilisateurs appartiennent au site actuel en utilisant
<?php is_user_member_of_blog( $user_id, $blog_id ); ?>
Après avoir obtenu l'ID de l'utilisateur créer un rôle d'utilisateur
$user = new WP_User( $user_id );
if ( $user ) {
$roles = $user->roles;
et en dernier créer des publications pour chaque utilisateur en ajoutant le rôle dans les arguments. pas testé mais je vais faire un tour pour vous.
<?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>';
?>