<?php /** * LearnDash `[ld_materials]` shortcode processing. * * @since 4.0.0 * @package LearnDash\Shortcodes */ use LearnDash\Core\Utilities\Cast; if ( ! defined( 'ABSPATH' ) ) { exit; } /** * Builds the `[ld_materials]` shortcode output. * * @global boolean $learndash_shortcode_used * * @since 4.0.0 * * @param array $atts { * An array of shortcode attributes. * * @type int $post_id ID of the post for displaying the materials. * * @param string $content The shortcode content. Default empty. * @param string $shortcode_slug The shortcode slug. Default 'ld_materials'. * * @return string The `ld_materials` shortcode output. */ function learndash_materials_shortcode_function( $atts = array(), $content = '', $shortcode_slug = 'ld_materials' ) { if ( learndash_is_active_theme( 'legacy' ) ) { return $content; } global $learndash_shortcode_used; if ( ! is_array( $atts ) ) { $atts = array(); } if ( ( ! isset( $atts['autop'] ) ) || ( true === $atts['autop'] ) || ( 'true' === $atts['autop'] ) || ( '1' === $atts['autop'] ) ) { $atts['autop'] = 'true'; } else { $atts['autop'] = 'false'; } $atts_defaults = array( 'post_id' => '', 'autop' => 'true', ); $atts = shortcode_atts( $atts_defaults, $atts ); /** This filter is documented in includes/shortcodes/ld_course_resume.php */ $atts = apply_filters( 'learndash_shortcode_atts', $atts, $shortcode_slug ); if ( ! empty( $atts['post_id'] ) ) { $atts['post_id'] = absint( $atts['post_id'] ); } else { $atts['post_id'] = absint( get_the_ID() ); } // Check post access. if ( ! learndash_shortcode_can_current_user_access_post( Cast::to_int( $atts['post_id'] ) ) ) { return ''; } $post = get_post( $atts['post_id'] ); if ( in_array( $post->post_type, learndash_get_post_types(), true ) ) { $materials_out = ''; $context = learndash_get_post_type_key( $post->post_type ); $materials = learndash_get_setting( $atts['post_id'] ); if ( isset( $materials[ $context . '_materials_enabled' ] ) && 'on' === $materials[ $context . '_materials_enabled' ] ) { if ( ( isset( $materials[ $context . '_materials' ] ) ) && ( ! empty( $materials[ $context . '_materials' ] ) ) ) { $materials_out = wp_specialchars_decode( strval( $materials[ $context . '_materials' ] ), ENT_QUOTES ); if ( 'true' === $atts['autop'] ) { $materials_out = wpautop( $materials_out ); } } } if ( ! empty( $materials_out ) ) { $learndash_shortcode_used = true; $content .= '<div class="learndash-wrapper learndash-wrap learndash-shortcode-wrap">' . $materials_out . '</div>'; } } return $content; } add_shortcode( 'ld_materials', 'learndash_materials_shortcode_function', 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 |
|