[wp-trac] [WordPress Trac] #35340: PHP Fatal Error: Call to undefined method WP_Error::exists()
WordPress Trac
noreply at wordpress.org
Thu Jan 7 01:28:15 UTC 2016
#35340: PHP Fatal Error: Call to undefined method WP_Error::exists()
--------------------------+------------------------------
Reporter: crackhd | Owner:
Type: defect (bug) | Status: new
Priority: normal | Milestone: Awaiting Review
Component: Users | Version: 4.4
Severity: normal | Resolution:
Keywords: | Focuses:
--------------------------+------------------------------
Description changed by dd32:
Old description:
> This error happens since update to Wordpress 4.4.0,
> my current version is 4.4.1 (not in the list in trac)
>
> Log:
>
> [Thu Jan 07 ... 2016] [:error] [pid 21932] [client...] PHP Fatal error:
> Call to undefined method WP_Error::exists() in /var/websites/s4mp/wp-
> includes/capabilities.php on line 505
>
> Fix:
>
> On line 505 in capabilities.php, change user_can() function from:
> ```
> if ( ! $user || ! $user->exists() )
> return false;
> ```
> To:
> ```
> if ( ! $user || $user instanceof WP_Error || ! $user->exists() )
> return false;
> ```
>
> When it happens?
> Enable "WP Maintenance mode" (with known plugin), then request password
> reset email and follow link. On my current configuration (without changes
> to Wordpress code) it raises this error when clicking "Submit" and
> sending password reset form.
>
> This of course not happens on clean Wordpress installation, this is list
> of my plugins (folder names):
>
> 404-error-logger custom-css-js-php
> rvg-optimize-database
> 404-to-start custom-sidebars
> site-plugin
> are-you-robot-recaptcha disable-search
> slate-admin-theme
> bbpress easy-fancybox
> smart-donations
> bbpress-auto-suggest-topics-based-on-new-topic-title easy-wp-smtp
> super-socializer
> bbpress-mark-as-read email-users
> syntax-highlight
> bbpress-members-only enhanced-text-
> widget tabby-responsive-tabs
> bbpress-permalinks-with-id google-analytics-
> dashboard-for-wp tablepress
> bbpress-post-topics hello.php
> twitter-tracker
> bbpress-quotes index.php
> user-access-manager
> bbpress-report-content jetpack
> wordpress-seo
> bwp-recent-comments jetpack-only-for-
> admins wp-security-audit-log
> comments-widget-plus login-with-
> username-or-email zencache
> crayon-syntax-highlighter maintenance
>
> I could not find which of them causes problem exactly but error itself
> points to bug in wordpress, i think, because "$user" becomes an instance
> of "WP_Errror".
New description:
This error happens since update to Wordpress 4.4.0,
my current version is 4.4.1 (not in the list in trac)
Log:
[Thu Jan 07 ... 2016] [:error] [pid 21932] [client...] PHP Fatal error:
Call to undefined method WP_Error::exists() in /var/websites/s4mp/wp-
includes/capabilities.php on line 505
Fix:
On line 505 in capabilities.php, change user_can() function from:
{{{
if ( ! $user || ! $user->exists() )
return false;
}}}
To:
{{{
if ( ! $user || $user instanceof WP_Error || ! $user->exists() )
return false;
}}}
When it happens?
Enable "WP Maintenance mode" (with known plugin), then request password
reset email and follow link. On my current configuration (without changes
to Wordpress code) it raises this error when clicking "Submit" and sending
password reset form.
This of course not happens on clean Wordpress installation, this is list
of my plugins (folder names):
{{{
404-error-logger custom-css-js-php
rvg-optimize-database
404-to-start custom-sidebars
site-plugin
are-you-robot-recaptcha disable-search
slate-admin-theme
bbpress easy-fancybox
smart-donations
bbpress-auto-suggest-topics-based-on-new-topic-title easy-wp-smtp
super-socializer
bbpress-mark-as-read email-users
syntax-highlight
bbpress-members-only enhanced-text-widget
tabby-responsive-tabs
bbpress-permalinks-with-id google-analytics-
dashboard-for-wp tablepress
bbpress-post-topics hello.php
twitter-tracker
bbpress-quotes index.php
user-access-manager
bbpress-report-content jetpack
wordpress-seo
bwp-recent-comments jetpack-only-for-
admins wp-security-audit-log
comments-widget-plus login-with-username-
or-email zencache
crayon-syntax-highlighter maintenance
}}}
I could not find which of them causes problem exactly but error itself
points to bug in wordpress, i think, because "$user" becomes an instance
of "WP_Errror".
--
--
Ticket URL: <https://core.trac.wordpress.org/ticket/35340#comment:1>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list