bp_document_user_document_folder_tree_view_li_html( int $user_id, int $group_id )
Return the breadcrumbs.
Description
Parameters
- $user_id
-
(Required)
- $group_id
-
(Required)
Return
(string)
Source
File: bp-document/bp-document-functions.php
function bp_document_user_document_folder_tree_view_li_html( $user_id = 0, $group_id = 0 ) {
global $wpdb, $bp;
$document_folder_table = $bp->document->table_name_folder;
if ( 0 === $group_id ) {
$group_id = ( function_exists( 'bp_get_current_group_id' ) ) ? bp_get_current_group_id() : 0;
}
$documents_folder_query = $wpdb->prepare( "SELECT * FROM {$document_folder_table} WHERE user_id = %d AND group_id = %d ORDER BY id DESC", $user_id, $group_id );
$data = $wpdb->get_results( $documents_folder_query, ARRAY_A ); // db call ok; no-cache ok;
// Build array of item references:
foreach ( $data as $key => &$item ) {
$itemsByReference[ $item['id'] ] = &$item;
// Children array:
$itemsByReference[ $item['id'] ]['children'] = array();
// Empty data class (so that json_encode adds "data: {}" )
$itemsByReference[ $item['id'] ]['data'] = new StdClass();
}
// Set items as children of the relevant parent item.
foreach ( $data as $key => &$item ) {
if ( $item['parent'] && isset( $itemsByReference[ $item['parent'] ] ) ) {
$itemsByReference [ $item['parent'] ]['children'][] = &$item;
}
}
// Remove items that were added to parents elsewhere:
foreach ( $data as $key => &$item ) {
if ( $item['parent'] && isset( $itemsByReference[ $item['parent'] ] ) ) {
unset( $data[ $key ] );
}
}
return bp_document_folder_recursive_li_list( $data, false );
}
Changelog
| Version | Description |
|---|---|
| BuddyBoss 1.4.0 | Introduced. |
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.