Design · PHP · Server

Design · PHP · Server

WordPress · Drupal · PrestaShop

  • Startseite
  • WordPress
  • PHP
  • Ubuntu
  • Prestashop
  • Indesign
  • Grafik

BuddyPress: Mitgliederliste modifizieren

22. November 2018 Leave a Comment

Standardmäßig werden 20 Mitglieder pro Seite angezeigt. Diese Zahl lässt sich mit dem Parameter ‚per_page‘ ändern:

add_filter( 'bp_after_has_members_parse_args', 'wbcom_theme_alter_members_parse_args' );
function wbcom_theme_alter_members_parse_args( $loop ) {
	if ( bp_is_members_directory() ) {
		{
		$loop['per_page'] = 50;
		}
	}
	return $loop;
}

Dieser Code kann in die Datei bp-customs.php, die im Pluginorder platziert wird, eingefügt werden.

Mit folgendem Filter lässt sich die Standardsortierung „zuletzt aktiv“ auf alphabetisch ändern

// Sortierung auf alphabetisch ändern

add_filter( 'bp_after_has_members_parse_args', 'wbcom_theme_alter_members_parse_args_sortierung' );
function wbcom_theme_alter_members_parse_args_sortierung( $loop ) {
	if ( bp_is_members_directory() ) {
		{
		$loop['type'] = alphabetical;
		}
	}
	return $loop;
}

Folgende Optionen stehen für die Sortierung als Argument zur Verfügung:
active, newest, popular, online, alphabetical, random

Um die Mitglieder nach Nachnamen sortiert aufzulisten, hilft folgende Funktion

/* Nach Nachname sortieren */
function alphabetize_by_last_name( $bp_user_query ) {
    if ( 'alphabetical' == $bp_user_query->query_vars['type'] )
        $bp_user_query->uid_clauses['orderby'] = "ORDER BY substring_index(u.display_name, ' ', -1)";
}
add_action ( 'bp_pre_user_query', 'alphabetize_by_last_name' );

Filed Under: WordPress Tagged With: BuddyPress

BuddyPress: Admin (oder andere Benutzer) aus Mitgliederliste entfernen

17. Oktober 2018 Leave a Comment

Mit der folgenden Funktion können Admins oder andere Mitglieder aus der Mitgliederliste, die die letzten Aktivitäten aufzeigt, entfernt werden.

// Remove admin from the member directory
function bpdev_exclude_users($qs=false,$object=false){

$excluded_user='1'; // Id's to remove, separated by comma

if($object != 'members' && $object != 'friends') // hide admin to members & friends
return $qs;

$args=wp_parse_args($qs);

if(!empty($args['user_id']))
return $qs;

if(!empty($args['exclude']))
$args['exclude'] = $args['exclude'].','.$excluded_user;
else
$args['exclude'] = $excluded_user;

$qs = build_query($args);

return $qs;

}
add_action('bp_ajax_querystring','bpdev_exclude_users',20,2);

// once admin is removed, we must recount the members !
function bpfr_hide_get_total_filter($count){
return $count-1;
}
add_filter('bp_get_total_member_count','bpfr_hide_get_total_filter');

Quelle: https://buddypress.org/support/topic/hide-members-2/

Soll nur eine bestimmte Nutzerrolle in der Mitgliederliste gezeigt werden, so lässt sich dies mit der Option exclude und der query role__not_in erreichen:

add_action('bp_ajax_querystring','bpdev_exclude_users',20,2);
function bpdev_exclude_users($qs=false,$object=false){
    //list of users to exclude
     
    if($object!='members')//hide for members only
        return $qs;
        
    $excluded_user=join(',',bpdev_get_subscriber_user_ids());//comma separated ids of users whom you want to exclude
  
    
    $args=wp_parse_args($qs);
    
    //check if we are searching for friends list etc?, do not exclude in this case
    if(!empty($args['user_id']))
        return $qs;
    
    if(!empty($args['exclude']))
        $args['exclude']=$args['exclude'].','.$excluded_user;
    else 
        $args['exclude']=$excluded_user;
      
    $qs=build_query($args);
   
   
   return $qs;
    
}

function bpdev_get_subscriber_user_ids(){
  
    $subscribers= get_users( array( 'role__not_in' => 'subscribers', 'fields' => 'ID' ) );
  
   return $subscribers;
}

Es werden mit dieser Funktion nur Abonnenten (Subscriber) gelistet und alle, die nicht die Rolle „Subscriber“ haben, ausgeschlossen.

Filed Under: WordPress Tagged With: BuddyPress

Buddypress: Navigationsleiste in Gruppen anpassen

17. Juli 2018 Leave a Comment

	if ( ! bp_is_group() ) {
		return;
	}

	$slug = bp_get_current_group_slug();
        // all existing default group tabs are listed here. Uncomment or remove.
	//	bp_core_remove_subnav_item( $slug, 'members' );
	        bp_core_remove_subnav_item( $slug, 'activity' );
		bp_core_remove_subnav_item( $slug, 'send-invites' );
	//	bp_core_remove_subnav_item( $slug, 'admin' );
	//	bp_core_remove_subnav_item( $slug, 'forum' );

}

Für die Menueinträge, die entfernt werden sollen, in der o.g. Funktion Kommentierung entfernen.

Filed Under: WordPress Tagged With: BuddyPress

  • 1
  • 2
  • Next Page »

Themen

Adminbar Apache Attachment Count Automatische Updates Backend Boolean values Boolesche Werte BuddyPress Code Snippets Concatenation Operator Conditional Statement Datenbank Email Enfold Escape Zeichen Galerien genesis Grid View htaccess Layout Builder List View Logische Operatoren Loops Maskieren Media Manager Mitgliederbereich PHP PHP Anfänger PHP Variablen Plugins Prestashop Prestashop 1.5 Prestashop 1.6 Prestashop Module Registrierung RSS Feed s2member Server ssl Strings Windows Windows 10 WooCommerce WooCommerce Sortierung WordPress

Letzte Kommentare

  • Thomas bei WordPress: Einzelne Kategorien aus dem RSS Feed ausschließen
  • Bernhard bei CSS: Automatische Silbentrennung in einzelnen Wörtern verhindern
  • Bernhard bei CSS: Automatische Silbentrennung in einzelnen Wörtern verhindern
  • MC bei PHP: Boolesche Werte (Boolean Values)
  • eno bei Zufällige Produktanordnung beim Featured Product Slider (PrestaShop 6.1.11 / Megashop Theme)

Informationen

  • Kontakt
  • Datenschutzerklärung
  • Impressum
  • Kontakt
  • Datenschutzerklärung
  • Impressum