<?php /** * LearnDash `[user_groups]` shortcode processing. * * @since 2.1.0 * * @package LearnDash\Shortcodes */ if ( ! defined( 'ABSPATH' ) ) { exit; } use LearnDash\Core\Utilities\Cast; /** * Builds the `[user_groups]` shortcode output. * * @since 2.1.0 * * @global boolean $learndash_shortcode_used * * @param array $attr { * An array of shortcode attributes. * * @type int $user_id User ID. Default to current user ID. * } * @param string $content The shortcode content. Default empty. * @param string $shortcode_slug The shortcode slug. Default 'user_groups'. * * @return string The output for `user_groups` shortcode. */ function learndash_user_groups( $attr = array(), $content = '', $shortcode_slug = 'user_groups' ) { global $learndash_shortcode_used; $learndash_shortcode_used = true; $shortcode_atts = shortcode_atts( array( 'user_id' => '', ), $attr ); /** This filter is documented in includes/shortcodes/ld_course_resume.php */ $shortcode_atts = apply_filters( 'learndash_shortcode_atts', $shortcode_atts, $shortcode_slug ); if ( ! empty( $shortcode_atts['user_id'] ) ) { // Override the user ID if the current user can't access the passed user ID's data. $shortcode_atts['user_id'] = learndash_shortcode_protect_user( Cast::to_int( $shortcode_atts['user_id'] ) ); } else { $shortcode_atts['user_id'] = get_current_user_id(); } if ( $shortcode_atts['user_id'] <= 0 ) { return ''; } $admin_groups = learndash_get_administrators_group_ids( $shortcode_atts['user_id'] ); $user_groups = learndash_get_users_group_ids( $shortcode_atts['user_id'] ); $has_admin_groups = ! empty( $admin_groups ) && is_array( $admin_groups ) && ! empty( $admin_groups[0] ); $has_user_groups = ! empty( $user_groups ) && is_array( $user_groups ) && ! empty( $user_groups[0] ); if ( ! $has_admin_groups && ! $has_user_groups ) { return ''; } return SFWD_LMS::get_template( 'user_groups_shortcode', array( 'admin_groups' => $admin_groups, 'user_groups' => $user_groups, 'has_admin_groups' => $has_admin_groups, 'has_user_groups' => $has_user_groups, ) ); } add_shortcode( 'user_groups', 'learndash_user_groups', 10, 3 );
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
ld_certificate.php | File | 8.85 KB | 0644 |
|
ld_course_certificate.php | File | 2.14 KB | 0644 |
|
ld_course_complete.php | File | 2.35 KB | 0644 |
|
ld_course_content.php | File | 14.56 KB | 0644 |
|
ld_course_expire_status.php | File | 4.86 KB | 0644 |
|
ld_course_info.php | File | 1.58 KB | 0644 |
|
ld_course_inprogress.php | File | 2.36 KB | 0644 |
|
ld_course_list.php | File | 45.9 KB | 0644 |
|
ld_course_notstarted.php | File | 2.36 KB | 0644 |
|
ld_course_progress.php | File | 3.26 KB | 0644 |
|
ld_course_resume.php | File | 4.51 KB | 0644 |
|
ld_courseinfo.php | File | 17.25 KB | 0644 |
|
ld_group.php | File | 2.49 KB | 0644 |
|
ld_group_list.php | File | 1.21 KB | 0644 |
|
ld_group_user_list.php | File | 4.69 KB | 0644 |
|
ld_groupinfo.php | File | 9.34 KB | 0644 |
|
ld_infobar.php | File | 6.52 KB | 0644 |
|
ld_lesson_list.php | File | 2.07 KB | 0644 |
|
ld_materials.php | File | 2.68 KB | 0644 |
|
ld_navigation.php | File | 5.25 KB | 0644 |
|
ld_payment_buttons.php | File | 2.2 KB | 0644 |
|
ld_profile.php | File | 7.72 KB | 0644 |
|
ld_quiz.php | File | 15.78 KB | 0644 |
|
ld_quiz_complete.php | File | 2.07 KB | 0644 |
|
ld_quiz_list.php | File | 3.12 KB | 0644 |
|
ld_quizinfo.php | File | 9.4 KB | 0644 |
|
ld_registration.php | File | 1.29 KB | 0644 |
|
ld_reset_password.php | File | 1.3 KB | 0644 |
|
ld_student.php | File | 5.17 KB | 0644 |
|
ld_topic_list.php | File | 2.68 KB | 0644 |
|
ld_user_course_points.php | File | 1.86 KB | 0644 |
|
ld_user_groups.php | File | 2.17 KB | 0644 |
|
ld_usermeta.php | File | 2.97 KB | 0644 |
|
ld_visitor.php | File | 4.81 KB | 0644 |
|
learndash_user_status.php | File | 1.79 KB | 0644 |
|
shortcodes-functions.php | File | 3.12 KB | 0644 |
|
shortcodes-loader.php | File | 1.8 KB | 0644 |
|