bp_has_groups (|字符串数组args美元='')
启动Groups模板循环。
描述
参数
- args美元
-
(数组|字符串)(可选)数组的参数。所有项目都是可选的。
- “类型”
(字符串)某些次序/次序组合的简写。' latest ', 'active', 'popular', 'alphabetical', 'random'。当出现时,将重写orderderby和order参数。默认值:空。 - “秩序”
(字符串)排序顺序。“ASC”或“DESC”。默认值:“DESC”。 - “orderby”
(字符串)属性进行排序。'date_created', 'last_activity', 'total_member_count', 'name', 'random'。默认值:“last_activity”。 - “页面”
(int)返回结果的页偏移量。默认值:1(结果的第一页)。 - “per_page”
(int)每页结果要返回的项目数。默认值:20。 - “马克斯”
(int)不影响查询。可能会改变已发现的总组的报告数量,但不会改变已发现的组的实际数量。默认值:false。 - “show_hidden”
(保龄球)是否在结果中包含隐藏的组。默认值:false。 - “page_arg”
(字符串)用于分页的查询参数。默认值:“grpage”。 - “user_id”
(int)如果提供,结果将仅限于指定用户所属的组。默认值:价值bp_displayed_user_id (). - “鼻涕虫”
(字符串)如果提供,则只返回具有匹配的代码段的组。默认值:false。 - “search_term”
(字符串)如果提供,则只返回名称或描述与搜索条件匹配的组。默认值:价值$ _REQUEST [' groups_search ']
或$ _REQUEST [s]
,如果存在。否则错误。 - “group_type”
(数组|字符串)用于限制结果的数组或逗号分隔的组类型列表。 - “group_type__in”
(数组|字符串)用于限制结果的数组或逗号分隔的组类型列表。 - “group_type__not_in”
(数组|字符串)将从结果中排除的数组或逗号分隔的组类型列表。 - “meta_query”
(数组)一个meta_query条件数组。看到WP_Meta_Query:查询为描述。 - “包括”
(数组|字符串)数组或逗号分隔的组id列表。结果将仅限于列表中的组。默认值:false。 - “排除”
(数组|字符串)数组或逗号分隔的组id列表。结果将排除列出的组。默认值:false。 - “parent_id”
(数组|字符串)数组或逗号分隔的组id列表。结果将只包括列出的组的子组。默认值:空。 - “update_meta_cache”
(保龄球)是否为查询的组获取groupmeta。默认值:真的。 - “update_admin_cache”
(保龄球)是否预取被查询组的admins。当在组目录上时默认为true,在循环中需要此信息。否则错误。
默认值:“
- “类型”
返回
(保龄球)如果有匹配参数的组要显示,则为True
源
文件:bp-groups / bp-groups-template.php
函数bp_has_groups($args = ") {global $ group_template;/* *默认值基于当前页面&被解析的$args覆盖*/ $slug = false;$ type = ";美元search_term = false;//当查看自己的组时,检查两个动作变量。If (bp_is_current_action('my-groups')) {If (bp_is_action_variable('most-popular', 0)) {$type = 'popular';} else (bp_is_action_variable('按字母顺序',0)){$type = '按字母顺序';} //当查看邀请时,设置类型为邀请。} else (bp_is_current_action('邀请')){$type = '邀请';//当查看单个组时,设置类型和蛞蝓。 } elseif ( bp_get_current_group_slug() ) { $type = 'single-group'; $slug = bp_get_current_group_slug(); } $group_type = bp_get_current_group_directory_type(); if ( ! $group_type && ! empty( $_GET['group_type'] ) ) { if ( is_array( $_GET['group_type'] ) ) { $group_type = $_GET['group_type']; } else { // Can be a comma-separated list. $group_type = explode( ',', $_GET['group_type'] ); } } // Default search string (too soon to escape here). $search_query_arg = bp_core_get_component_search_query_arg( 'groups' ); if ( ! empty( $_REQUEST[ $search_query_arg ] ) ) { $search_terms = stripslashes( $_REQUEST[ $search_query_arg ] ); } elseif ( ! empty( $_REQUEST['group-filter-box'] ) ) { $search_terms = $_REQUEST['group-filter-box']; } elseif ( !empty( $_REQUEST['s'] ) ) { $search_terms = $_REQUEST['s']; } // Parse defaults and requested arguments. $r = bp_parse_args( $args, array( 'type' => $type, 'order' => 'DESC', 'orderby' => 'last_activity', 'page' => 1, 'per_page' => 20, 'max' => false, 'show_hidden' => false, 'page_arg' => 'grpage', 'user_id' => bp_displayed_user_id(), 'slug' => $slug, 'search_terms' => $search_terms, 'group_type' => $group_type, 'group_type__in' => '', 'group_type__not_in' => '', 'meta_query' => false, 'include' => false, 'exclude' => false, 'parent_id' => null, 'update_meta_cache' => true, 'update_admin_cache' => bp_is_groups_directory() || bp_is_user_groups(), ), 'has_groups' ); $args = array( 'type' => $r['type'], 'order' => $r['order'], 'orderby' => $r['orderby'], 'page' => (int) $r['page'], 'per_page' => (int) $r['per_page'], 'max' => (int) $r['max'], 'show_hidden' => $r['show_hidden'], 'page_arg' => $r['page_arg'], 'user_id' => (int) $r['user_id'], 'slug' => $r['slug'], 'search_terms' => $r['search_terms'], 'group_type' => $r['group_type'], 'group_type__in' => $r['group_type__in'], 'group_type__not_in' => $r['group_type__not_in'], 'meta_query' => $r['meta_query'], 'include' => $r['include'], 'exclude' => $r['exclude'], 'parent_id' => $r['parent_id'], 'update_meta_cache' => (bool) $r['update_meta_cache'], 'update_admin_cache' => (bool) $r['update_admin_cache'], ); if ( isset( $_POST['template'] ) && 'group_subgroups' === $_POST['template'] ) { $descendant_groups = bp_get_descendent_groups( bp_get_current_group_id(), bp_loggedin_user_id() ); $ids = wp_list_pluck( $descendant_groups, 'id' ); $args['include'] = $ids; $args['slug'] = ''; $args['type'] = ''; $args['show_hidden'] = true; } // Setup the Groups template global. $groups_template = new BP_Groups_Template( $args ); /** * Filters whether or not there are groups to iterate over for the groups loop. * * @since BuddyPress 1.1.0 * * @param bool $value Whether or not there are groups to iterate over. * @param BP_Groups_Template $groups_template BP_Groups_Template object based on parsed arguments. * @param array $r Array of parsed arguments for the query. */ return apply_filters( 'bp_has_groups', $groups_template->has_groups(), $groups_template, $r ); }
更新日志
版本 | 描述 |
---|---|
BuddyPress 1.0.0 | 介绍了。 |