learndash_user_status.php
3.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<?php
/**
* LearnDash Shortcode Section for User Status [learndash_user_status].
*
* @since 4.0.0
* @package LearnDash\Settings\Shortcodes
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
if ( ( class_exists( 'LearnDash_Shortcodes_Section' ) ) && ( ! class_exists( 'LearnDash_Shortcodes_Section_learndash_user_status' ) ) ) {
/**
* Class LearnDash Shortcode Section for User Status [learndash_user_status].
*
* @since 4.0.0
*/
class LearnDash_Shortcodes_Section_learndash_user_status extends LearnDash_Shortcodes_Section /* phpcs:ignore PEAR.NamingConventions.ValidClassName.Invalid */ {
/**
* Public constructor for class.
*
* @since 4.0.0
*
* @param array $fields_args Field Args.
*/
public function __construct( $fields_args = array() ) {
$this->fields_args = $fields_args;
$this->shortcodes_section_key = 'learndash_user_status';
$this->shortcodes_section_title = esc_html__( 'User Status', 'learndash' );
$this->shortcodes_section_type = 2;
$this->shortcodes_section_description = esc_html__( 'This shortcode displays information of enrolled courses and their progress for a user. Defaults to current logged in user if no ID specified.', 'learndash' );
parent::__construct();
}
/**
* Initialize the shortcode fields.
*
* @since 4.0.0
*/
public function init_shortcodes_section_fields() {
$this->shortcodes_option_fields = array(
'user_id' => array(
'id' => $this->shortcodes_section_key . '_user_d',
'name' => 'user_id',
'type' => 'number',
'label' => esc_html__( 'User ID', 'learndash' ),
'help_text' => esc_html__( 'ID of the user to display information for.', 'learndash' ),
'value' => '',
),
'registered_num' => array(
'id' => $this->shortcodes_section_key . '_registered_num',
'name' => 'registered_num',
'type' => 'number',
'label' => esc_html__( 'Courses Per Page', 'learndash' ),
'help_text' => esc_html__( 'Number of courses to display per page. Set to 0 for no pagination.', 'learndash' ),
'value' => '',
),
'registered_order_by' => array(
'id' => $this->shortcodes_section_key . '_registered_order_by',
'name' => 'registered_order_by',
'type' => 'select',
'label' => esc_html__( 'Order By', 'learndash' ),
'value' => 'title',
'options' => array(
'post_title' => esc_html__( 'Title (default)', 'learndash' ),
'post_id' => esc_html__( 'No', 'learndash' ),
'post_date' => esc_html__( 'Date', 'learndash' ),
'menu_order' => esc_html__( 'Menu', 'learndash' ),
),
),
'registered_order' => array(
'id' => $this->shortcodes_section_key . '_registered_order',
'name' => 'registered_order',
'type' => 'select',
'label' => esc_html__( 'Order', 'learndash' ),
'value' => 'ASC',
'options' => array(
'ASC' => esc_html__( 'ASC (default)', 'learndash' ),
'DESC' => esc_html__( 'DESC', 'learndash' ),
),
),
);
/** This filter is documented in includes/settings/settings-metaboxes/class-ld-settings-metabox-course-access-settings.php */
$this->shortcodes_option_fields = apply_filters( 'learndash_settings_fields', $this->shortcodes_option_fields, $this->shortcodes_section_key );
parent::init_shortcodes_section_fields();
}
}
}