Critical Error on profile courses page
-
Hi there. Having serious issues with the recent updates to this plugin causing a site I help work on to be unable to update this plugin. The problem is on the profile, going to “Courses” page causes a 500 critical error. The site is using this with the Learnpress Buddypress plugin, also Youzify. I have disabled Youzify and still with only Buddypress it has the same 500 critial error on that page only. The quizzes and orders pages work fine.
The latest version that does work perfectly is 4.2.2.2 After that one the error occurs. Also the LP Buddypress bridge plugin is made by you. Something after 4.2.2.2 is conflicting with that.
WordPress version 6.2.2, php version 8.0.29, LearnPress – BuddyPress Integration version 4.0.0, BuddyPress version 11.2.0
-
This is the Stack Trace from my logs of the testing site
[03-Jul-2023 22:18:28 UTC] PHP Warning: Undefined array key "courses" in /home/lipsweb/public_html/wp-content/themes/tentered/tentered-framework/tentered-theme-functions.php on line 559
[03-Jul-2023 22:18:28 UTC] PHP Fatal error: Uncaught Error: Cannot use object of type LP_Query_List_Table as array in /home/lipsweb/public_html/wp-content/plugins/learnpress-buddypress/templates/profile/courses.php:55
Stack trace: 0 /home/lipsweb/public_html/wp-content/plugins/learnpress/inc/lp-template-functions.php(878): include() 1 /home/lipsweb/public_html/wp-content/plugins/learnpress-buddypress/inc/load.php(286): learn_press_get_template() 2 /home/lipsweb/public_html/wp-includes/class-wp-hook.php(308): LP_Addon_BuddyPress->bp_tab_courses_content() 3 /home/lipsweb/public_html/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters() 4 /home/lipsweb/public_html/wp-includes/plugin.php(517): WP_Hook->do_action() 5 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/includes/template-tags.php(36): do_action() 6 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/includes/template-tags.php(55): bp_nouveau_hook() 7 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/buddypress/members/single/plugins.php(35): bp_nouveau_plugin_hook() 8 /home/lipsweb/public_html/wp-includes/template.php(783): require_once('/home/lipsweb/p…') 9 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/includes/members/functions.php(336): load_template() 10 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/includes/members/template-tags.php(631): bp_nouveau_member_get_template_part() 11 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/buddypress/members/single/home.php(27): bp_nouveau_member_template_part() 12 /home/lipsweb/public_html/wp-includes/template.php(785): require('/home/lipsweb/p…') 13 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-core/bp-core-template-loader.php(222): load_template() 14 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-core/bp-core-template-loader.php(67): bp_locate_template() 15 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-core/bp-core-template-loader.php(407): bp_get_template_part() 16 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-members/classes/class-bp-members-theme-compat.php(212): bp_buffer_template_part() 17 /home/lipsweb/public_html/wp-includes/class-wp-hook.php(308): BP_Members_Theme_Compat->single_dummy_content() 18 /home/lipsweb/public_html/wp-includes/plugin.php(205): WP_Hook->apply_filters() 19 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-core/bp-core-theme-compatibility.php(767): apply_filters() 20 /home/lipsweb/public_html/wp-includes/class-wp-hook.php(308): bp_replace_the_content() 21 /home/lipsweb/public_html/wp-includes/plugin.php(205): WP_Hook->apply_filters() 22 /home/lipsweb/public_html/wp-includes/post-template.php(255): apply_filters() 23 /home/lipsweb/public_html/wp-content/themes/tentered/page.php(45): the_content() 24 /home/lipsweb/public_html/wp-includes/template-loader.php(106): include('/home/lipsweb/p…') 25 /home/lipsweb/public_html/wp-blog-header.php(19): require_once('/home/lipsweb/p…') 26 /home/lipsweb/public_html/index.php(17): require('/home/lipsweb/p…') 27 {main} thrown in /home/lipsweb/public_html/wp-content/plugins/learnpress-buddypress/templates/profile/courses.php on line 55Hi,
We saw that is the issue of your theme, it is overriding our code. Please contact to the author of your theme and they will check for you.
ThanksTried with Buddy-X theme, same thing. So I just tried WordPress default Twenty Twenty Three theme, same critical error. Stack Trace:
[04-Jul-2023 03:41:03 UTC] PHP Fatal error: Uncaught Error: Cannot use object of type LP_Query_List_Table as array in /home/lipsweb/public_html/wp-content/plugins/learnpress-buddypress/templates/profile/courses.php:55
Stack trace: 0 /home/lipsweb/public_html/wp-content/plugins/learnpress/inc/lp-template-functions.php(878): include() 1 /home/lipsweb/public_html/wp-content/plugins/learnpress-buddypress/inc/load.php(286): learn_press_get_template() 2 /home/lipsweb/public_html/wp-includes/class-wp-hook.php(308): LP_Addon_BuddyPress->bp_tab_courses_content() 3 /home/lipsweb/public_html/wp-includes/class-wp-hook.php(332): WP_Hook->apply_filters() 4 /home/lipsweb/public_html/wp-includes/plugin.php(517): WP_Hook->do_action() 5 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/includes/template-tags.php(36): do_action() 6 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/includes/template-tags.php(55): bp_nouveau_hook() 7 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/buddypress/members/single/plugins.php(35): bp_nouveau_plugin_hook() 8 /home/lipsweb/public_html/wp-includes/template.php(783): require_once('/home/lipsweb/p…') 9 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/includes/members/functions.php(336): load_template() 10 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/includes/members/template-tags.php(631): bp_nouveau_member_get_template_part() 11 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-templates/bp-nouveau/buddypress/members/single/home.php(27): bp_nouveau_member_template_part() 12 /home/lipsweb/public_html/wp-includes/template.php(785): require('/home/lipsweb/p…') 13 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-core/bp-core-template-loader.php(222): load_template() 14 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-core/bp-core-template-loader.php(67): bp_locate_template() 15 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-core/bp-core-template-loader.php(407): bp_get_template_part() 16 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-members/classes/class-bp-members-theme-compat.php(212): bp_buffer_template_part() 17 /home/lipsweb/public_html/wp-includes/class-wp-hook.php(308): BP_Members_Theme_Compat->single_dummy_content() 18 /home/lipsweb/public_html/wp-includes/plugin.php(205): WP_Hook->apply_filters() 19 /home/lipsweb/public_html/wp-content/plugins/buddypress/bp-core/bp-core-theme-compatibility.php(767): apply_filters() 20 /home/lipsweb/public_html/wp-includes/class-wp-hook.php(308): bp_replace_the_content() 21 /home/lipsweb/public_html/wp-includes/plugin.php(205): WP_Hook->apply_filters() 22 /home/lipsweb/public_html/wp-includes/blocks/post-content.php(54): apply_filters() 23 /home/lipsweb/public_html/wp-includes/class-wp-block.php(258): render_block_core_post_content() 24 /home/lipsweb/public_html/wp-includes/class-wp-block.php(244): WP_Block->render() 25 /home/lipsweb/public_html/wp-includes/blocks.php(1072): WP_Block->render() 26 /home/lipsweb/public_html/wp-includes/blocks.php(1110): render_block() 27 /home/lipsweb/public_html/wp-includes/block-template.php(242): do_blocks() 28 /home/lipsweb/public_html/wp-includes/template-canvas.php(12): get_the_block_template_html() 29 /home/lipsweb/public_html/wp-includes/template-loader.php(106): include('/home/lipsweb/p…') 30 /home/lipsweb/public_html/wp-blog-header.php(19): require_once('/home/lipsweb/p…') 31 /home/lipsweb/public_html/index.php(17): require('/home/lipsweb/p…') 32 {main} thrown in /home/lipsweb/public_html/wp-content/plugins/learnpress-buddypress/templates/profile/courses.php on line 55Hi again. I looked at the change log for version 4.2.2.3 when that error started to happen, and indeed it references the the thing causing the error “~ Remove implements ArrayAccess of LP_Query_List_Table class (to compatible with PHP8.1).” Checked out the repository for what changed, and put back the implements ArrayAccess part ( inc/class-lp-query-list-table.php line 10 ), and now it works fully again. Thought I would let you know what I found hoping it helps out.
Hi Mandi,
We will never implement ArrayAccess for version 4.2.2.3 and later, because it deprecated from PHP 8.1
You can try to use LP BuddyPress v4.0.1-beta-1 to fix that. And you need to update LP to the latest version.Thanks.
Hi again. Yeah that is important getting it valid for new php.
Got the beta LP Buddypress bridge and restored that file I changed back. It’s all working great again. Awesome, thanks. for helping out with is. 🙂
Hi Mandi,
It is good news. A nice rating for LearnPress is a big motivation for us to keep up the hard work.
To make the review, please visit here https://wordpress.org/support/plugin/learnpress/reviews/?rate=5#new-post
Thank you so much!
Best regards.
The topic ‘Critical Error on profile courses page’ is closed to new replies.