Aktivitäten von definierten BuddyPress-Gruppen anzeigen

Ich möchte nur für bestimmte Gruppen eine Aktivitätsschleife anzeigen.

Wenn ich benutze

 'groups','per_page'=>6 ,'primary_id' => $group_id, 'page' => isset($_REQUEST['page']) ? $_REQUEST['page'] : 1 ) ) ) : ?> 

Ich kann eine Gruppen-ID übergeben, um Ergebnisse zu filtern.

Das Problem ist, dass ich ein Array von Gruppen-IDs habe. Ich habe es versucht

  'groups','per_page'=>6 ,'in' => $groups_ids, 'page' => isset($_REQUEST['page']) ? $_REQUEST['page'] : 1 ) ) ) : ?> 

Aber 'in' => $array nimmt nur ein Array von Aktivitäts-IDs. Wie erreiche ich das?

Solutions Collecting From Web of "Aktivitäten von definierten BuddyPress-Gruppen anzeigen"

Nachdem ich alle groups_ids bekommen habe, bekomme ich alle activities_ids:

 < ?php global $bp,$wpdb; $groups_ids = implode(', ', $groups_ids); $sql = "SELECT id FROM {$bp->activity->table_name} WHERE component = 'groups' AND item_id IN ({$groups_ids})"; $activity_ids = $wpdb->get_results( $sql); $a_id = array(); foreach ($activity_ids as $activity_id ) { $a_id[] = $activity_id->id; } ?> 

Dann bekomme ich nur eine Aktivitätsschleife mit den angegebenen Gruppen:

 $params = array('per_page' => '6', 'in' => $a_id); if ( bp_has_activities($params) ) : endif; 

Sie sollten angeben, welche Version von BP Sie verwenden.

Versuchen Sie es mit:

 function groups_get_groups( $args = '' ) in bp-groups\bp-groups-functions.php 

Oder:

 function bp_has_groups( $args = '' ) in bp-groups\bp-groups-template.php 

Beachten Sie die Include-Gruppen-IDs in beiden functionen.

Dann benutze eine Schleife. while ( bp_groups() ) : bp_the_group();

Sehen Sie sich im Allgemeinen die bp-default-Themendateien an, um zu sehen, wie die Dinge aufgerufen werden. In diesem Fall wird es Ihnen mit bp-themes\bp-default\groups\groups-loop.php leichter fallen.