LearnPress 4.0.5

Does LearnPress work with WordPress 5.7.2 and PHP 7.4.8? A smoke test was performed on .

Summary

Errors
41Database errors
No JavaScript exceptions
All test pages loaded successfully
No resource errors
Performance

Memory usage: 4.57 MiB
The average PHP memory usage increased by this amount after activating by the plugin.

Page speed impact: 0.229 seconds
The average page load time increased by this amount after activating the plugin.

Environment
WordPress version5.7.2
PHP version7.4.8
MySQL version8.0.21
PHP memory limit256M
Plugin Info
Last updated
Active installs 90,000+
WordPress.org page https://wordpress.org/plugins/learnpress/
Badges

WordPress compatibility badge PHP compatibility badge

Get badge code

Pages 27

Plugins ‹ Test site — WordPress

Page screenshot: Plugins ‹ Test site — WordPress
URL /wp-admin/plugins.php?plugin_status=all&paged=1&s
Requested URL /wp-admin/plugins.php?action=activate&plugin=learnpress%2Flearnpress.php&plugin_status=all&paged=1&s&_wpnonce=d940c7232f
Aspect after-activation
HTTP status 200
Load time 9.213 s
Memory usage 5.44 MiB
JS errors None
Resource errors None

LearnPress

Page screenshot: LearnPress
URL /wp-admin/edit.php?post_type=lp_course
Aspect menu-item
HTTP status 200
Load time 1.002 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Categories

Page screenshot: LearnPress → Categories
URL /wp-admin/edit-tags.php?taxonomy=course_category&post_type=lp_course
Aspect menu-item-tab
HTTP status 200
Load time 0.295 s
Memory usage 7.67 MiB
JS errors None
Resource errors None

LearnPress → Tags

Page screenshot: LearnPress → Tags
URL /wp-admin/edit-tags.php?taxonomy=course_tag&post_type=lp_course
Aspect menu-item-tab
HTTP status 200
Load time 0.327 s
Memory usage 7.67 MiB
JS errors None
Resource errors None

LearnPress → Lessons

Page screenshot: LearnPress → Lessons
URL /wp-admin/edit.php?post_type=lp_lesson
Aspect menu-item
HTTP status 200
Load time 0.423 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Quizzes

Page screenshot: LearnPress → Quizzes
URL /wp-admin/edit.php?post_type=lp_quiz
Aspect menu-item
HTTP status 200
Load time 0.391 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Questions

Page screenshot: LearnPress → Questions
URL /wp-admin/edit.php?post_type=lp_question
Aspect menu-item
HTTP status 200
Load time 0.329 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Orders

Page screenshot: LearnPress → Orders
URL /wp-admin/edit.php?post_type=lp_order
Aspect menu-item
HTTP status 200
Load time 0.621 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Statistics

Page screenshot: LearnPress → Statistics
URL /wp-admin/admin.php?page=learn-press-statistics
Aspect menu-item
HTTP status 200
Load time 0.427 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Statistics → Users

Page screenshot: LearnPress → Statistics → Users
URL /wp-admin/admin.php?page=learn-press-statistics&tab=users
Aspect menu-item-tab
HTTP status 200
Load time 0.330 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Statistics → Courses

Page screenshot: LearnPress → Statistics → Courses
URL /wp-admin/admin.php?page=learn-press-statistics&tab=courses
Aspect menu-item-tab
HTTP status 200
Load time 0.276 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Statistics → Orders

Page screenshot: LearnPress → Statistics → Orders
URL /wp-admin/admin.php?page=learn-press-statistics&tab=orders
Aspect menu-item-tab
HTTP status 200
Load time 0.311 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Add-ons

Page screenshot: LearnPress → Add-ons
URL /wp-admin/admin.php?page=learn-press-addons
Aspect menu-item
HTTP status 200
Load time 0.466 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Add-ons → Installed (0)

Page screenshot: LearnPress → Add-ons → Installed (0)
URL /wp-admin/admin.php?page=learn-press-addons&tab=installed
Aspect menu-item-tab
HTTP status 200
Load time 0.247 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Add-ons → Themes (28)

Page screenshot: LearnPress → Add-ons → Themes (28)
URL /wp-admin/admin.php?page=learn-press-addons&tab=themes
Aspect menu-item-tab
HTTP status 200
Load time 1.707 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Settings

Page screenshot: LearnPress → Settings
URL /wp-admin/admin.php?page=learn-press-settings
Aspect menu-item
HTTP status 200
Load time 0.591 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Settings → Courses

Page screenshot: LearnPress → Settings → Courses
URL /wp-admin/admin.php?page=learn-press-settings&tab=courses
Aspect menu-item-tab
HTTP status 200
Load time 0.522 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Settings → Profile

Page screenshot: LearnPress → Settings → Profile
URL /wp-admin/admin.php?page=learn-press-settings&tab=profile
Aspect menu-item-tab
HTTP status 200
Load time 0.364 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Settings → Payments

Page screenshot: LearnPress → Settings → Payments
URL /wp-admin/admin.php?page=learn-press-settings&tab=payments
Aspect menu-item-tab
HTTP status 200
Load time 0.302 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Settings → Emails

Page screenshot: LearnPress → Settings → Emails
URL /wp-admin/admin.php?page=learn-press-settings&tab=emails
Aspect menu-item-tab
HTTP status 200
Load time 0.380 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Settings → Advanced

Page screenshot: LearnPress → Settings → Advanced
URL /wp-admin/admin.php?page=learn-press-settings&tab=advanced
Aspect menu-item-tab
HTTP status 200
Load time 0.324 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Tools

Page screenshot: LearnPress → Tools
URL /wp-admin/admin.php?page=learn-press-tools
Aspect menu-item
HTTP status 200
Load time 0.781 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Tools → Database

Page screenshot: LearnPress → Tools → Database
URL /wp-admin/admin.php?page=learn-press-tools&tab=database
Aspect menu-item-tab
HTTP status 200
Load time 0.817 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

LearnPress → Tools → Templates

Page screenshot: LearnPress → Tools → Templates
URL /wp-admin/admin.php?page=learn-press-tools&tab=template
Aspect menu-item-tab
HTTP status 200
Load time 0.575 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

Test site – Just another WordPress site

Page screenshot: Test site – Just another WordPress site
URL /
Aspect front-page
HTTP status 200
Load time 0.491 s
Memory usage 5.05 MiB
JS errors None
Resource errors None

Dashboard ‹ Test site — WordPress

Page screenshot: Dashboard ‹ Test site — WordPress
URL /wp-admin/index.php
Aspect new-meta-boxes
HTTP status 200
Load time 0.633 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

Widgets ‹ Test site — WordPress

Page screenshot: Widgets ‹ Test site — WordPress
URL /wp-admin/widgets.php
Aspect new-sidebar-widgets
HTTP status 200
Load time 1.201 s
Memory usage 7.66 MiB
JS errors None
Resource errors None

Benchmark

URL Load time Memory usage
Inactive Active Change Inactive Active Change
/wp-admin/index.php0.265 s0.681 s+0.416 s2.82 MiB7.66 MiB+ 4.84 MiB
/wp-admin/edit.php0.169 s0.500 s+0.331 s2.86 MiB7.66 MiB+ 4.8 MiB
/wp-admin/post-new.php0.965 s1.903 s+0.938 s5.02 MiB9.33 MiB+ 4.3 MiB
/wp-admin/upload.php0.493 s0.685 s+0.192 s2.7 MiB7.66 MiB+ 4.97 MiB
/wp-admin/options-writing.php0.148 s0.304 s+0.156 s2.71 MiB7.66 MiB+ 4.95 MiB
/wp-admin/media-new.php0.246 s0.332 s+0.086 s2.67 MiB7.66 MiB+ 4.99 MiB
/wp-admin/edit-tags.php?taxonomy=category0.215 s0.292 s+0.077 s2.77 MiB7.67 MiB+ 4.89 MiB
/wp-admin/post-new.php?post_type=page1.268 s1.258 s-0.010 s5.01 MiB9.31 MiB+ 4.3 MiB
/wp-admin/options-discussion.php0.268 s0.499 s+0.231 s2.67 MiB7.66 MiB+ 4.99 MiB
/wp-admin/edit-comments.php0.211 s0.390 s+0.179 s2.78 MiB7.66 MiB+ 4.89 MiB
/0.344 s0.263 s-0.081 s2.65 MiB4.95 MiB+ 2.3 MiB
Average 0.417 s0.646 s+0.229 s3.15 MiB7.72 MiB+ 4.57 MiB

Code Statistics

Note: Third-party libraries and minified JS/CSS files are excluded from these statistics where possible, so the numbers you see here may be lower than those reported by other tools.

PHP
PO File
CSS
Language % Lines of code Comment lines Files
PHP50.0%71,61726,354615
PO File29.3%41,93224,82615
CSS10.0%14,3422025
JavaScript7.8%11,139548140
XML3.0%4,32603
Total 143,356 51,930 778

PHP Code Analysis | More results »

Lines of code 60,741
Total complexity 12,532
Median class complexity 15.0
Median method complexity 2.0
Most complex class LP_Abstract_User
Most complex function LP_Meta_Box_Helper::save_fields()
Classes 292
Methods 3,229
Functions 699

Additions

Things that the plugin adds to the site. This section is not intended to be comprehensive. The test tool only looks for a few specific types of added content.

Database Tables 12

Options wp_options 47

User Metadata wp_usermeta 1

Custom Post Types 5

ID Name
lp_courseCourses
lp_lessonLessons
lp_quizQuizzes
lp_questionQuestion Bank
lp_orderOrders

Sidebar Widgets 7

ID Name
learnpress_widget_course_extraLearnPress - Course Extra
learnpress_widget_course_infoLearnPress - Course Info
learnpress_widget_course_progressLearnPress - Course Progress
learnpress_widget_course_sidebar_previewLearnPress - Course Sidebar Preview
learnpress_widget_course_featuredLearnPress - Featured Courses
learnpress_widget_course_popularLearnPress - Popular Courses
learnpress_widget_course_recentLearnPress - Recent Courses

Meta Boxes

{
    "dashboard": {
        "learn_press_dashboard_order_statuses": {
            "title": "LearnPress order status",
            "context": "normal"
        },
        "learn_press_dashboard_plugin_status": {
            "title": "LearnPress status",
            "context": "normal"
        }
    },
    "lp_course": {
        "course-settings": {
            "title": "Course Settings",
            "context": "normal"
        }
    },
    "lp_quiz": {
        "quiz_settings": {
            "title": "Quiz Settings",
            "context": "normal"
        }
    },
    "lp_lesson": {
        "lesson_settings": {
            "title": "Lesson Settings",
            "context": "normal"
        }
    },
    "lp_question": {
        "question_settings": {
            "title": "Question Settings",
            "context": "normal"
        }
    }
}

Roles 1

ID Name
lp_teacherLP Instructor

Capabilities 29

PHP Error Log 261 lines

[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_section_items' doesn't exist for query 
				SELECT COUNT(it.ID) `count`, it.post_type
				FROM wp_learnpress_section_items si
				INNER JOIN wp_learnpress_sections s ON si.section_id = s.section_id
				INNER JOIN wp_posts c ON c.ID = s.section_course_id
				INNER JOIN wp_posts it ON it.ID = si.item_id
				WHERE s.section_course_id = 36 AND c.post_status = 'publish'
					AND it.post_status = 'publish'  GROUP BY it.post_type  made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Course_CURD->count_items
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_section_items' doesn't exist for query 
				SELECT COUNT(it.ID) `count`, it.post_type
				FROM wp_learnpress_section_items si
				INNER JOIN wp_learnpress_sections s ON si.section_id = s.section_id
				INNER JOIN wp_posts c ON c.ID = s.section_course_id
				INNER JOIN wp_posts it ON it.ID = si.item_id
				WHERE s.section_course_id = 37 AND c.post_status = 'publish'
					AND it.post_status = 'publish'  GROUP BY it.post_type  made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Course_CURD->count_items
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_section_items' doesn't exist for query 
				SELECT COUNT(it.ID) `count`, it.post_type
				FROM wp_learnpress_section_items si
				INNER JOIN wp_learnpress_sections s ON si.section_id = s.section_id
				INNER JOIN wp_posts c ON c.ID = s.section_course_id
				INNER JOIN wp_posts it ON it.ID = si.item_id
				WHERE s.section_course_id = 34 AND c.post_status = 'publish'
					AND it.post_status = 'publish'  GROUP BY it.post_type  made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Course_CURD->count_items
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_section_items' doesn't exist for query 
				SELECT COUNT(it.ID) `count`, it.post_type
				FROM wp_learnpress_section_items si
				INNER JOIN wp_learnpress_sections s ON si.section_id = s.section_id
				INNER JOIN wp_posts c ON c.ID = s.section_course_id
				INNER JOIN wp_posts it ON it.ID = si.item_id
				WHERE s.section_course_id = 35 AND c.post_status = 'publish'
					AND it.post_status = 'publish'  GROUP BY it.post_type  made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Course_CURD->count_items
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_user_items' doesn't exist for query 
			SELECT DISTINCT user_id
			FROM wp_learnpress_user_items
			WHERE item_id = 34
		 made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Repair_Database->queue_sync_user_course_results
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_user_items' doesn't exist for query 
			SELECT DISTINCT user_id
			FROM wp_learnpress_user_items
			WHERE item_id = 36
		 made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Repair_Database->queue_sync_user_course_results
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_user_items' doesn't exist for query 
			SELECT DISTINCT user_id
			FROM wp_learnpress_user_items
			WHERE item_id = 37
		 made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Repair_Database->queue_sync_user_course_results
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_user_items' doesn't exist for query 
			SELECT DISTINCT user_id
			FROM wp_learnpress_user_items
			WHERE item_id = 35
		 made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Repair_Database->queue_sync_user_course_results
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_section_items' doesn't exist for query 
				SELECT COUNT(it.ID) `count`, it.post_type
				FROM wp_learnpress_section_items si
				INNER JOIN wp_learnpress_sections s ON si.section_id = s.section_id
				INNER JOIN wp_posts c ON c.ID = s.section_course_id
				INNER JOIN wp_posts it ON it.ID = si.item_id
				WHERE s.section_course_id = 38 AND c.post_status = 'publish'
					AND it.post_status = 'publish'  GROUP BY it.post_type  made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Course_CURD->count_items
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_user_items' doesn't exist for query 
			SELECT DISTINCT user_id
			FROM wp_learnpress_user_items
			WHERE item_id = 38
		 made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Repair_Database->queue_sync_user_course_results
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_section_items' doesn't exist for query 
				SELECT COUNT(it.ID) `count`, it.post_type
				FROM wp_learnpress_section_items si
				INNER JOIN wp_learnpress_sections s ON si.section_id = s.section_id
				INNER JOIN wp_posts c ON c.ID = s.section_course_id
				INNER JOIN wp_posts it ON it.ID = si.item_id
				WHERE s.section_course_id = 39 AND c.post_status = 'publish'
					AND it.post_status = 'publish'  GROUP BY it.post_type  made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Course_CURD->count_items
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_section_items' doesn't exist for query 
				SELECT COUNT(it.ID) `count`, it.post_type
				FROM wp_learnpress_section_items si
				INNER JOIN wp_learnpress_sections s ON si.section_id = s.section_id
				INNER JOIN wp_posts c ON c.ID = s.section_course_id
				INNER JOIN wp_posts it ON it.ID = si.item_id
				WHERE s.section_course_id = 40 AND c.post_status = 'publish'
					AND it.post_status = 'publish'  GROUP BY it.post_type  made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Course_CURD->count_items
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_user_items' doesn't exist for query 
			SELECT DISTINCT user_id
			FROM wp_learnpress_user_items
			WHERE item_id = 39
		 made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Repair_Database->queue_sync_user_course_results
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_section_items' doesn't exist for query 
				SELECT COUNT(it.ID) `count`, it.post_type
				FROM wp_learnpress_section_items si
				INNER JOIN wp_learnpress_sections s ON si.section_id = s.section_id
				INNER JOIN wp_posts c ON c.ID = s.section_course_id
				INNER JOIN wp_posts it ON it.ID = si.item_id
				WHERE s.section_course_id = 41 AND c.post_status = 'publish'
					AND it.post_status = 'publish'  GROUP BY it.post_type  made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Course_CURD->count_items
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_user_items' doesn't exist for query 
			SELECT DISTINCT user_id
			FROM wp_learnpress_user_items
			WHERE item_id = 40
		 made by do_action('admin_init'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Install::do_install, LP_Install::install, LP_Install::_create_pages, wp_insert_post, do_action('save_post'), WP_Hook->do_action, WP_Hook->apply_filters, LP_Repair_Database->save_post, LP_Repair_Database->sync_course_data, LP_Repair_Database->queue_sync_user_course_results
[20-May-2021 11:02:08 UTC] WordPress database error Table 'wordpress.wp_learnpress_user_items' doesn't exist for query 

(+161 more lines)
See also: All tests for this plugin, How to Hide LearnPress Admin Menus and More