bp_groups_get_group_type( int $group_id, bool $single = true, bool $use_db = true )

Get type for a group.


Parameters Parameters

$group_id

(int) (Required) ID of the group.

$single

(bool) (Optional) Whether to return a single type string. If multiple types are found for the group, the oldest one will be returned. Default: true.

Default value: true

$use_db

(bool) (Optional) Whether to request all group types or only the ones registered by code. Default: true.

Default value: true


Top ↑

Return Return

(string|array|bool) On success, returns a single group type (if $single is true) or an array of group types (if $single is false). Returns false on failure.


Source Source

File: bp-groups/bp-groups-functions.php

function bp_groups_get_group_type( $group_id, $single = true, $use_db = true ) {
	$types = wp_cache_get( $group_id, 'bp_groups_group_type' );

	if ( false === $types ) {
		$raw_types = bp_get_object_terms( $group_id, bp_get_group_type_tax_name() );

		if ( ! is_wp_error( $raw_types ) ) {
			$types = array();

			// Only include currently registered group types.
			foreach ( $raw_types as $gtype ) {
				if ( bp_groups_get_group_type_object( $gtype->name ) ) {
					$types[] = $gtype->name;
				}
			}

			wp_cache_set( $group_id, $types, 'bp_groups_group_type' );
		}
	}

	if ( false === $use_db && $types ) {
		$registred_by_code = bp_get_group_types_registered_by_code();
		$ctype_names       = wp_list_pluck( $registred_by_code, 'name' );
		$types             = array_intersect( $types, $ctype_names );
	}

	$type = false;
	if ( ! empty( $types ) ) {
		if ( $single ) {
			$type = end( $types );
		} else {
			$type = $types;
		}
	}

	/**
	 * Filters a groups's group type(s).
	 *
	 * @since 2.6.0
	 *
	 * @param string|array $type     Group type.
	 * @param int          $group_id ID of the group.
	 * @param bool         $single   Whether to return a single type string, or an array.
	 */
	return apply_filters( 'bp_groups_get_group_type', $type, $group_id, $single );
}


Top ↑

Changelog Changelog

Changelog
Version Description
7.0.0 Adds the $use_db parameter.
2.6.0 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.