1
votes

Starting from yesterday (judging by the error logs), out of the blue, we notice the following error on the site:

PHP Fatal error: Cannot access property WP_Hook::$callbacks in …/public_html/wp-includes/class-wp-hook.php on line 77

The site is working (possibly thanks to the caching plugin), but all attempts to login to admin panel cause the error 500.

We recovered the site from a backup from 6 of March (when the last successful login was), but the error persists.

We also tried to deactivate all the plugins (by renaming the folders via FTP), but still the same error. (Now the work of plugins is recovered from a backup.)

The hosting could not help to solve this problem.

Where to look next?

Site: http://russificateschool.com/

Thank you in advance for the help.

2

2 Answers

1
votes

Removing and uploading wp-includes from a fresh WP package solved the problem.

1
votes

You'll want to overwrite your existing wp-admin and wp-includes folders with baseline versions.

  1. First, get the version number of your Wordpress install by FTPing into your web host where Wordpress is installed.
  2. Download the wp-includes/version.php and view it, you'll see the version number.
  3. Go to https://wordpress.org/download/releases/ and download the gz or zip file for your version.
  4. Unpack the zip file that you downloaded. This will create folders for wp-admin, wp-content, and wp-includes with other files.
  5. On the web host, rename your wp-content/plugins folder to wp-content/plugins-bak.
  6. On the web host, delete the old wp-includes and wp-admin directories.
  7. Upload the new wp-includes and wp-admin directories to your web host, in place of the previously deleted directories.
  8. Upload the individual files from the new wp-content folder to your existing wp-content folder, overwriting existing files. Do NOT delete your existing wp-content folder. Do NOT delete any files or folders in your existing wp-content directory (except for the one being overwritten by new files).
  9. Upload all new loose files from the root directory of the new version to your existing wordpress root directory.
  10. Test your site to see if it loads. If it does, on the web host, rename your wp-content/plugins-bak folder to wp-content/plugin.