LLMS_Post_Types::register_post_types()
Register Post Types.
Return Return
(void)
Source Source
File: includes/class.llms.post-types.php
public static function register_post_types() { // Course. $catalog_id = llms_get_page_id( 'shop' ); self::register_post_type( 'course', array( 'labels' => array( 'name' => __( 'Courses', 'lifterlms' ), 'singular_name' => __( 'Course', 'lifterlms' ), 'menu_name' => _x( 'Courses', 'Admin menu name', 'lifterlms' ), 'add_new' => __( 'Add Course', 'lifterlms' ), 'add_new_item' => __( 'Add New Course', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Course', 'lifterlms' ), 'new_item' => __( 'New Course', 'lifterlms' ), 'view' => __( 'View Course', 'lifterlms' ), 'view_item' => __( 'View Course', 'lifterlms' ), 'search_items' => __( 'Search Courses', 'lifterlms' ), 'not_found' => __( 'No Courses found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Courses found in trash', 'lifterlms' ), 'parent' => __( 'Parent Course', 'lifterlms' ), ), 'public' => true, 'show_ui' => true, 'menu_icon' => 'dashicons-welcome-learn-more', 'capabilities' => self::get_post_type_caps( 'course' ), 'map_meta_cap' => true, 'publicly_queryable' => true, 'exclude_from_search' => false, 'hierarchical' => false, 'rewrite' => array( 'slug' => _x( 'course', 'course url slug', 'lifterlms' ), 'with_front' => false, 'feeds' => true, ), 'query_var' => true, 'supports' => array( 'title', 'author', 'editor', 'thumbnail', 'comments', 'custom-fields', 'page-attributes', 'revisions', 'llms-clone-post', 'llms-export-post', 'llms-sales-page' ), 'has_archive' => ( $catalog_id && get_post( $catalog_id ) ) ? get_page_uri( $catalog_id ) : _x( 'courses', 'course archive url slug', 'lifterlms' ), 'show_in_nav_menus' => true, 'menu_position' => 52, ) ); // Section. self::register_post_type( 'section', array( 'labels' => array( 'name' => __( 'Sections', 'lifterlms' ), 'singular_name' => __( 'Section', 'lifterlms' ), 'add_new' => __( 'Add Section', 'lifterlms' ), 'add_new_item' => __( 'Add New Section', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Section', 'lifterlms' ), 'new_item' => __( 'New Section', 'lifterlms' ), 'view' => __( 'View Section', 'lifterlms' ), 'view_item' => __( 'View Section', 'lifterlms' ), 'search_items' => __( 'Search Sections', 'lifterlms' ), 'not_found' => __( 'No Sections found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Sections found in trash', 'lifterlms' ), 'parent' => __( 'Parent Sections', 'lifterlms' ), 'menu_name' => _x( 'Sections', 'Admin menu name', 'lifterlms' ), ), 'public' => false, 'show_ui' => false, 'map_meta_cap' => true, 'publicly_queryable' => false, 'exclude_from_search' => true, 'hierarchical' => false, 'show_in_nav_menus' => false, 'rewrite' => false, 'query_var' => false, 'supports' => array( 'title' ), 'has_archive' => false, ) ); // Lesson. self::register_post_type( 'lesson', array( 'labels' => array( 'name' => __( 'Lessons', 'lifterlms' ), 'singular_name' => __( 'Lesson', 'lifterlms' ), 'add_new' => __( 'Add Lesson', 'lifterlms' ), 'add_new_item' => __( 'Add New Lesson', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Lesson', 'lifterlms' ), 'new_item' => __( 'New Lesson', 'lifterlms' ), 'view' => __( 'View Lesson', 'lifterlms' ), 'view_item' => __( 'View Lesson', 'lifterlms' ), 'search_items' => __( 'Search Lessons', 'lifterlms' ), 'not_found' => __( 'No Lessons found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Lessons found in trash', 'lifterlms' ), 'parent' => __( 'Parent Lessons', 'lifterlms' ), 'menu_name' => _x( 'Lessons', 'Admin menu name', 'lifterlms' ), ), 'public' => true, 'show_ui' => true, 'capabilities' => self::get_post_type_caps( 'lesson' ), 'map_meta_cap' => true, 'publicly_queryable' => true, 'exclude_from_search' => true, 'show_in_menu' => 'edit.php?post_type=course', 'hierarchical' => false, 'rewrite' => array( 'slug' => _x( 'lesson', 'lesson url slug', 'lifterlms' ), 'with_front' => false, 'feeds' => true, ), 'show_in_nav_menus' => false, 'query_var' => true, 'supports' => array( 'title', 'editor', 'excerpt', 'thumbnail', 'comments', 'custom-fields', 'page-attributes', 'revisions', 'author', 'llms-clone-post' ), ) ); // Quiz. self::register_post_type( 'llms_quiz', array( 'labels' => array( 'name' => __( 'Quizzes', 'lifterlms' ), 'singular_name' => __( 'Quiz', 'lifterlms' ), 'add_new' => __( 'Add Quiz', 'lifterlms' ), 'add_new_item' => __( 'Add New Quiz', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Quiz', 'lifterlms' ), 'new_item' => __( 'New Quiz', 'lifterlms' ), 'view' => __( 'View Quiz', 'lifterlms' ), 'view_item' => __( 'View Quiz', 'lifterlms' ), 'search_items' => __( 'Search Quiz', 'lifterlms' ), 'not_found' => __( 'No Quizzes found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Quizzes found in trash', 'lifterlms' ), 'parent' => __( 'Parent Quizzes', 'lifterlms' ), 'menu_name' => _x( 'Quizzes', 'Admin menu name', 'lifterlms' ), ), 'public' => true, 'show_ui' => false, 'map_meta_cap' => true, 'capabilities' => self::get_post_type_caps( array( 'quiz', 'quizzes' ) ), 'publicly_queryable' => true, 'exclude_from_search' => true, 'show_in_menu' => 'edit.php?post_type=course', 'hierarchical' => false, 'rewrite' => array( 'slug' => _x( 'quiz', 'quiz url slug', 'lifterlms' ), 'with_front' => false, 'feeds' => true, ), 'show_in_nav_menus' => false, 'query_var' => true, 'supports' => array( 'title', 'editor', 'author', 'custom-fields' ), ) ); // Quiz Question. self::register_post_type( 'llms_question', array( 'labels' => array( 'name' => __( 'Questions', 'lifterlms' ), 'singular_name' => __( 'Question', 'lifterlms' ), 'add_new' => __( 'Add Question', 'lifterlms' ), 'add_new_item' => __( 'Add New Question', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Question', 'lifterlms' ), 'new_item' => __( 'New Question', 'lifterlms' ), 'view' => __( 'View Question', 'lifterlms' ), 'view_item' => __( 'View Question', 'lifterlms' ), 'search_items' => __( 'Search Questions', 'lifterlms' ), 'not_found' => __( 'No Questions found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Questions found in trash', 'lifterlms' ), 'parent' => __( 'Parent Questions', 'lifterlms' ), 'menu_name' => _x( 'Quiz Questions', 'Admin menu name', 'lifterlms' ), ), 'public' => false, 'show_ui' => false, 'map_meta_cap' => true, 'capabilities' => self::get_post_type_caps( 'question' ), 'publicly_queryable' => false, 'exclude_from_search' => true, 'show_in_menu' => 'edit.php?post_type=course', 'hierarchical' => false, 'rewrite' => false, 'show_in_nav_menus' => false, 'query_var' => false, 'supports' => array( 'title', 'editor' ), ) ); // Membership. $membership_page_id = llms_get_page_id( 'memberships' ); self::register_post_type( 'llms_membership', array( 'labels' => array( 'name' => __( 'Memberships', 'lifterlms' ), 'singular_name' => __( 'Membership', 'lifterlms' ), 'menu_name' => _x( 'Memberships', 'Admin menu name', 'lifterlms' ), 'add_new' => __( 'Add Membership', 'lifterlms' ), 'add_new_item' => __( 'Add New Membership', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Membership', 'lifterlms' ), 'new_item' => __( 'New Membership', 'lifterlms' ), 'view' => __( 'View Membership', 'lifterlms' ), 'view_item' => __( 'View Membership', 'lifterlms' ), 'search_items' => __( 'Search Memberships', 'lifterlms' ), 'not_found' => __( 'No Memberships found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Memberships found in trash', 'lifterlms' ), 'parent' => __( 'Parent Membership', 'lifterlms' ), ), 'public' => true, 'show_ui' => true, 'capabilities' => self::get_post_type_caps( 'membership' ), 'map_meta_cap' => true, 'menu_icon' => 'dashicons-groups', 'publicly_queryable' => true, 'exclude_from_search' => false, 'show_in_menu' => true, 'hierarchical' => false, 'rewrite' => array( 'slug' => _x( 'membership', 'membership url slug', 'lifterlms' ), 'with_front' => false, 'feeds' => true, ), 'query_var' => true, 'supports' => array( 'title', 'editor', 'thumbnail', 'comments', 'custom-fields', 'page-attributes', 'revisions', 'llms-sales-page' ), 'has_archive' => ( $membership_page_id && get_post( $membership_page_id ) ) ? get_page_uri( $membership_page_id ) : _x( 'memberships', 'membership archive url slug', 'lifterlms' ), 'show_in_nav_menus' => true, 'menu_position' => 52, ) ); // Engagement. self::register_post_type( 'llms_engagement', array( 'labels' => array( 'name' => __( 'Engagements', 'lifterlms' ), 'singular_name' => __( 'Engagement', 'lifterlms' ), 'add_new' => __( 'Add Engagement', 'lifterlms' ), 'add_new_item' => __( 'Add New Engagement', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Engagement', 'lifterlms' ), 'new_item' => __( 'New Engagement', 'lifterlms' ), 'view' => __( 'View Engagement', 'lifterlms' ), 'view_item' => __( 'View Engagement', 'lifterlms' ), 'search_items' => __( 'Search Engagement', 'lifterlms' ), 'not_found' => __( 'No Engagement found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Engagement found in trash', 'lifterlms' ), 'parent' => __( 'Parent Engagement', 'lifterlms' ), 'menu_name' => _x( 'Engagements', 'Admin menu name', 'lifterlms' ), ), 'public' => false, 'show_ui' => ( current_user_can( apply_filters( 'lifterlms_admin_engagements_access', 'manage_lifterlms' ) ) ) ? true : false, 'map_meta_cap' => true, 'publicly_queryable' => false, 'exclude_from_search' => true, 'menu_position' => 52, 'menu_icon' => 'dashicons-awards', 'hierarchical' => false, 'show_in_nav_menus' => false, 'rewrite' => false, 'query_var' => false, 'supports' => array( 'title' ), 'has_archive' => false, ) ); // Order. self::register_post_type( 'llms_order', array( 'labels' => array( 'name' => __( 'Orders', 'lifterlms' ), 'singular_name' => __( 'Order', 'lifterlms' ), 'add_new' => __( 'Add Order', 'lifterlms' ), 'add_new_item' => __( 'Add New Order', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Order', 'lifterlms' ), 'new_item' => __( 'New Order', 'lifterlms' ), 'view' => __( 'View Order', 'lifterlms' ), 'view_item' => __( 'View Order', 'lifterlms' ), 'search_items' => __( 'Search Orders', 'lifterlms' ), 'not_found' => __( 'No Orders found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Orders found in trash', 'lifterlms' ), 'parent' => __( 'Parent Orders', 'lifterlms' ), 'menu_name' => _x( 'Orders', 'Admin menu name', 'lifterlms' ), ), 'public' => false, 'show_ui' => ( current_user_can( apply_filters( 'lifterlms_admin_order_access', 'manage_lifterlms' ) ) ) ? true : false, 'map_meta_cap' => true, 'publicly_queryable' => false, 'menu_icon' => 'dashicons-cart', 'menu_position' => 52, 'exclude_from_search' => true, 'hierarchical' => false, 'show_in_nav_menus' => false, 'rewrite' => false, 'query_var' => false, 'supports' => array( 'title', 'comments', 'custom-fields' ), 'has_archive' => false, 'capabilities' => array( 'create_posts' => 'do_not_allow', ), ) ); // Transaction. self::register_post_type( 'llms_transaction', array( 'labels' => array( 'name' => __( 'Transactions', 'lifterlms' ), 'singular_name' => __( 'Transaction', 'lifterlms' ), 'add_new' => __( 'Add Transaction', 'lifterlms' ), 'add_new_item' => __( 'Add New Transaction', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Transaction', 'lifterlms' ), 'new_item' => __( 'New Transaction', 'lifterlms' ), 'view' => __( 'View Transaction', 'lifterlms' ), 'view_item' => __( 'View Transaction', 'lifterlms' ), 'search_items' => __( 'Search Transactions', 'lifterlms' ), 'not_found' => __( 'No Transactions found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Transactions found in trash', 'lifterlms' ), 'parent' => __( 'Parent Transactions', 'lifterlms' ), 'menu_name' => _x( 'Orders', 'Admin menu name', 'lifterlms' ), ), 'public' => false, 'show_ui' => false, 'map_meta_cap' => true, 'publicly_queryable' => false, 'exclude_from_search' => true, 'show_in_menu' => false, 'hierarchical' => false, 'show_in_nav_menus' => false, 'rewrite' => false, 'query_var' => false, 'supports' => array( '' ), 'has_archive' => false, 'capabilities' => array( 'create_posts' => 'do_not_allow', ), ) ); // Achievement. self::register_post_type( 'llms_achievement', array( 'labels' => array( 'name' => __( 'Achievement Templates', 'lifterlms' ), 'singular_name' => __( 'Achievement Template', 'lifterlms' ), 'add_new' => __( 'Add Achievement Template', 'lifterlms' ), 'add_new_item' => __( 'Add New Achievement Template', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Achievement Template', 'lifterlms' ), 'new_item' => __( 'New Achievement Template', 'lifterlms' ), 'view' => __( 'View Achievement Template', 'lifterlms' ), 'view_item' => __( 'View Achievement Template', 'lifterlms' ), 'search_items' => __( 'Search Achievement Templates', 'lifterlms' ), 'not_found' => __( 'No Achievement Templates found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Achievement Templates found in trash', 'lifterlms' ), 'parent' => __( 'Parent Achievement Template', 'lifterlms' ), 'menu_name' => _x( 'Achievements', 'Admin menu name', 'lifterlms' ), 'featured_image' => __( 'Achievement Image', 'lifterlms' ), 'set_featured_image' => __( 'Set achievement image', 'lifterlms' ), 'remove_featured_image' => __( 'Remove achievement image', 'lifterlms' ), 'use_featured_image' => __( 'Use achievement image', 'lifterlms' ), ), 'public' => false, 'show_ui' => ( current_user_can( apply_filters( 'lifterlms_admin_achievements_access', 'manage_lifterlms' ) ) ) ? true : false, 'map_meta_cap' => true, 'publicly_queryable' => false, 'exclude_from_search' => true, 'show_in_menu' => 'edit.php?post_type=llms_engagement', 'hierarchical' => false, 'show_in_nav_menus' => false, 'rewrite' => false, 'query_var' => false, 'supports' => array( 'title', 'thumbnail' ), 'has_archive' => false, ) ); // Earned achievements. self::register_post_type( 'llms_my_achievement', array( 'labels' => array( 'name' => __( 'Awarded Achievements', 'lifterlms' ), 'singular_name' => __( 'Awarded Achievement', 'lifterlms' ), 'add_new' => __( 'Award Achievement', 'lifterlms' ), 'add_new_item' => __( 'Award New Achievement', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Awarded Achievement', 'lifterlms' ), 'new_item' => __( 'New Awarded Achievement', 'lifterlms' ), 'view' => __( 'View Awarded Achievement', 'lifterlms' ), 'view_item' => __( 'View Awarded Achievement', 'lifterlms' ), 'search_items' => __( 'Search Awarded Achievements', 'lifterlms' ), 'not_found' => __( 'No Awarded Achievements found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Awarded Achievements found in trash', 'lifterlms' ), 'parent' => __( 'Parent Awarded Achievements', 'lifterlms' ), 'menu_name' => _x( 'Awarded Achievements', 'Admin menu name', 'lifterlms' ), 'featured_image' => __( 'Achievement Image', 'lifterlms' ), 'set_featured_image' => __( 'Set awarded achievement image', 'lifterlms' ), 'remove_featured_image' => __( 'Remove awarded achievement image', 'lifterlms' ), 'use_featured_image' => __( 'Use awarded achievement image', 'lifterlms' ), ), 'description' => __( 'This is where you can view all of the awarded achievements.', 'lifterlms' ), 'public' => false, /** * Filters the needed capability to generate and allow a UI for managing `llms_my_achievement` post type in the admin. * * @since 6.0.0 * * @param bool $show_ui The needed capability to generate and allow a UI for managing `llms_my_achievement` post type in the admin. * Default is `manage_earned_engagements`. */ 'show_ui' => ( current_user_can( apply_filters( 'lifterlms_admin_my_achievements_access', LLMS_Roles::MANAGE_EARNED_ENGAGEMENT_CAP ) ) ) ? true : false, 'capabilities' => self::get_post_type_caps( 'my_achievement' ), 'map_meta_cap' => false, 'publicly_queryable' => false, 'exclude_from_search' => true, /** This filter is documented above. */ 'show_in_menu' => ( current_user_can( apply_filters( 'lifterlms_admin_my_achievements_access', LLMS_Roles::MANAGE_EARNED_ENGAGEMENT_CAP ) ) ) ? 'edit.php?post_type=llms_engagement' : false, 'hierarchical' => false, 'rewrite' => false, 'show_in_nav_menus' => false, 'has_archive' => false, 'query_var' => false, 'supports' => array( 'title', 'thumbnail' ), ) ); // Certificate. self::register_certificate_post_type( 'llms_certificate', array( 'name' => __( 'Certificate Templates', 'lifterlms' ), 'singular_name' => __( 'Certificate Template', 'lifterlms' ), 'add_new' => __( 'Add Certificate Template', 'lifterlms' ), 'add_new_item' => __( 'Add New Certificate Template', 'lifterlms' ), 'edit_item' => __( 'Edit Certificate Template', 'lifterlms' ), 'new_item' => __( 'New Certificate Template', 'lifterlms' ), 'view' => __( 'View Certificate Template', 'lifterlms' ), 'view_item' => __( 'View Certificate Template', 'lifterlms' ), 'search_items' => __( 'Search Certificate Templates', 'lifterlms' ), 'not_found' => __( 'No Certificate Templates found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Certificate Templates found in trash', 'lifterlms' ), 'parent' => __( 'Parent Certificate Templates', 'lifterlms' ), 'menu_name' => _x( 'Certificates', 'Admin menu name', 'lifterlms' ), ), array( 'map_meta_cap' => true, ), _x( 'certificate-template', 'slug', 'lifterlms' ), /** * Filters the WordPress user capability required for a user to manage certificate templates on the admin panel. * * @since Unknown * * @param string $capability User capability. Default: `manage_lifterlms`. */ apply_filters( 'lifterlms_admin_certificates_access', 'manage_lifterlms' ) ); // Earned certificate. self::register_certificate_post_type( 'llms_my_certificate', array( 'name' => __( 'Awarded Certificates', 'lifterlms' ), 'singular_name' => __( 'Awarded Certificate', 'lifterlms' ), 'add_new' => __( 'Award Certificate', 'lifterlms' ), 'add_new_item' => __( 'Award New Certificate', 'lifterlms' ), 'edit_item' => __( 'Edit Awarded Certificate', 'lifterlms' ), 'new_item' => __( 'New Awarded Certificate', 'lifterlms' ), 'view' => __( 'View Awarded Certificate', 'lifterlms' ), 'view_item' => __( 'View Awarded Certificate', 'lifterlms' ), 'search_items' => __( 'Search Awarded Certificates', 'lifterlms' ), 'not_found' => __( 'No Awarded Certificates found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Awarded Certificates found in trash', 'lifterlms' ), 'parent' => __( 'Parent Awarded Certificates', 'lifterlms' ), 'menu_name' => _x( 'Awarded Certificates', 'Admin menu name', 'lifterlms' ), ), array( 'capabilities' => self::get_post_type_caps( 'my_certificate' ), 'map_meta_cap' => false, ), _x( 'certificate', 'slug', 'lifterlms' ), /** * Filters the needed capability to generate and allow a UI for managing `llms_my_certificate` post type in the admin. * * @since 6.0.0 * * @param bool $show_ui The needed capability to generate and allow a UI for managing `llms_my_certificate` post type in the admin. * Default is `manage_earned_engagements`. */ apply_filters( 'lifterlms_admin_my_certificates_access', LLMS_Roles::MANAGE_EARNED_ENGAGEMENT_CAP ) ); // Email. self::register_post_type( 'llms_email', array( 'labels' => array( 'name' => __( 'Email Templates', 'lifterlms' ), 'singular_name' => __( 'Email Template', 'lifterlms' ), 'add_new' => __( 'Add Email Template', 'lifterlms' ), 'add_new_item' => __( 'Add New Email Template', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Email Template', 'lifterlms' ), 'new_item' => __( 'New Email Template', 'lifterlms' ), 'view' => __( 'View Email Template', 'lifterlms' ), 'view_item' => __( 'View Email Template', 'lifterlms' ), 'search_items' => __( 'Search Email Templates', 'lifterlms' ), 'not_found' => __( 'No Emails found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Emails found in trash', 'lifterlms' ), 'parent' => __( 'Parent Email Templates', 'lifterlms' ), 'menu_name' => _x( 'Emails', 'Admin menu name', 'lifterlms' ), ), 'public' => false, 'show_ui' => ( current_user_can( apply_filters( 'lifterlms_admin_emails_access', 'manage_lifterlms' ) ) ) ? true : false, 'map_meta_cap' => true, 'publicly_queryable' => false, 'exclude_from_search' => true, 'show_in_menu' => 'edit.php?post_type=llms_engagement', 'hierarchical' => false, 'show_in_nav_menus' => false, 'rewrite' => false, 'query_var' => false, 'supports' => array( 'title', 'editor' ), 'has_archive' => false, ) ); // Coupon. self::register_post_type( 'llms_coupon', array( 'labels' => array( 'name' => __( 'Coupons', 'lifterlms' ), 'singular_name' => __( 'Coupon', 'lifterlms' ), 'add_new' => __( 'Add Coupon', 'lifterlms' ), 'add_new_item' => __( 'Add New Coupon', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Coupon', 'lifterlms' ), 'new_item' => __( 'New Coupon', 'lifterlms' ), 'view' => __( 'View Coupon', 'lifterlms' ), 'view_item' => __( 'View Coupon', 'lifterlms' ), 'search_items' => __( 'Search Coupon', 'lifterlms' ), 'not_found' => __( 'No Coupon found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Coupon found in trash', 'lifterlms' ), 'parent' => __( 'Parent Coupon', 'lifterlms' ), 'menu_name' => _x( 'Coupons', 'Admin menu name', 'lifterlms' ), ), 'public' => false, 'show_ui' => ( current_user_can( apply_filters( 'lifterlms_admin_coupons_access', 'manage_lifterlms' ) ) ) ? true : false, 'map_meta_cap' => true, 'publicly_queryable' => false, 'exclude_from_search' => true, 'show_in_menu' => 'edit.php?post_type=llms_order', 'hierarchical' => false, 'show_in_nav_menus' => false, 'rewrite' => false, 'query_var' => false, 'supports' => array( 'title' ), 'has_archive' => false, ) ); // Voucher. self::register_post_type( 'llms_voucher', array( 'labels' => array( 'name' => __( 'Vouchers', 'lifterlms' ), 'singular_name' => __( 'Voucher', 'lifterlms' ), 'add_new' => __( 'Add Voucher', 'lifterlms' ), 'add_new_item' => __( 'Add New Voucher', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Voucher', 'lifterlms' ), 'new_item' => __( 'New Voucher', 'lifterlms' ), 'view' => __( 'View Voucher', 'lifterlms' ), 'view_item' => __( 'View Voucher', 'lifterlms' ), 'search_items' => __( 'Search Voucher', 'lifterlms' ), 'not_found' => __( 'No Voucher found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Voucher found in trash', 'lifterlms' ), 'parent' => __( 'Parent Voucher', 'lifterlms' ), 'menu_name' => _x( 'Vouchers', 'Admin menu name', 'lifterlms' ), ), 'public' => false, 'show_ui' => ( current_user_can( apply_filters( 'lifterlms_admin_vouchers_access', 'manage_lifterlms' ) ) ) ? true : false, 'map_meta_cap' => true, 'publicly_queryable' => false, 'exclude_from_search' => true, 'show_in_menu' => 'edit.php?post_type=llms_order', 'hierarchical' => false, 'show_in_nav_menus' => false, 'rewrite' => false, 'query_var' => false, 'supports' => array( 'title' ), 'has_archive' => false, ) ); // Review. self::register_post_type( 'llms_review', array( 'labels' => array( 'name' => __( 'Reviews', 'lifterlms' ), 'singular_name' => __( 'Review', 'lifterlms' ), 'menu_name' => _x( 'Reviews', 'Admin menu name', 'lifterlms' ), 'add_new' => __( 'Add Review', 'lifterlms' ), 'add_new_item' => __( 'Add New Review', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Review', 'lifterlms' ), 'new_item' => __( 'New Review', 'lifterlms' ), 'view' => __( 'View Review', 'lifterlms' ), 'view_item' => __( 'View Review', 'lifterlms' ), 'search_items' => __( 'Search Reviews', 'lifterlms' ), 'not_found' => __( 'No Reviews found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Reviews found in trash', 'lifterlms' ), 'parent' => __( 'Parent Review', 'lifterlms' ), ), 'public' => false, 'show_ui' => ( current_user_can( apply_filters( 'lifterlms_admin_reviews_access', 'manage_lifterlms' ) ) ) ? true : false, 'map_meta_cap' => true, 'publicly_queryable' => false, 'exclude_from_search' => true, 'show_in_menu' => 'edit.php?post_type=course', 'hierarchical' => false, 'show_in_nav_menus' => false, 'rewrite' => false, 'query_var' => false, 'has_archive' => false, 'supports' => array( 'title', 'editor', 'excerpt', 'thumbnail', 'comments', 'custom-fields', 'page-attributes' ), ) ); // Access Plan. self::register_post_type( 'llms_access_plan', array( 'labels' => array( 'name' => __( 'Access Plans', 'lifterlms' ), 'singular_name' => __( 'Access Plan', 'lifterlms' ), 'add_new' => __( 'Add Access Plan', 'lifterlms' ), 'add_new_item' => __( 'Add New Access Plan', 'lifterlms' ), 'edit' => __( 'Edit', 'lifterlms' ), 'edit_item' => __( 'Edit Access Plan', 'lifterlms' ), 'new_item' => __( 'New Access Plan', 'lifterlms' ), 'view' => __( 'View Access Plan', 'lifterlms' ), 'view_item' => __( 'View Access Plan', 'lifterlms' ), 'search_items' => __( 'Search Access Plans', 'lifterlms' ), 'not_found' => __( 'No Access Plans found', 'lifterlms' ), 'not_found_in_trash' => __( 'No Access Plans found in trash', 'lifterlms' ), 'parent' => __( 'Parent Access Plans', 'lifterlms' ), 'menu_name' => _x( 'Access Plans', 'Admin menu name', 'lifterlms' ), ), 'public' => false, 'show_ui' => false, 'map_meta_cap' => true, 'publicly_queryable' => false, 'exclude_from_search' => true, /** * Making this post type hierarchical prevents a conflict * with the Redirection plugin (https://wordpress.org/plugins/redirection/) * When 301 monitoring is turned on, Redirection creates access plans * for each access plan that redirect the course or membership * to the site's home page. */ 'hierarchical' => true, 'show_in_nav_menus' => false, 'rewrite' => false, 'query_var' => false, 'supports' => array( 'title' ), 'has_archive' => false, ) ); }
Expand full source code Collapse full source code View on GitHub
Changelog Changelog
Version | Description |
---|---|
6.0.0 | Show llms_my_certificate ui (edit) only to who can manage_lifterlms . Register llms_my_achievement post type. Add thumbnail support for achievement and certificates (earned and template) Renames llms_certificate slug from certificate to certificate-template . Rename llms_my_certificate slug from my_certificate to certificate . Replaced the use of the deprecated get_page() function with get_post()`. |
5.8.0 | Remove all post type descriptions. |
5.5.0 | Register all the post types using self::register_post_type() . |
4.5.1 | Removed "excerpt" support for the course post type. |
4.17.0 | Add "llms-sales-page" feature to course and membership post types. |
3.37.12 | Added 'revisions' support to course, lesson, and llms_mebership post types. |
3.33.0 | llms_question post type is not publicly queryable anymore. |
3.0.4 | Made 'llms_access_plan' post type hierarchical to prevent a conflict with the Redirection plugin. |
1.0.0 | Introduced. |