Support » Fixing WordPress » Cannot access plugins page in admin section

  • After updating from PHP 7.2 FastCGI to 7.3 FastCGI I cannot access my plugins page to manage them. Many times even just going to https://dan.bemowski.info/wp-admin/ I see this message too, but sometimes it will let me in.

    Error thrown
    Cannot unset string offsets

    I tried searching google for this error, but was not finding much of anything for others that may have had this problem. I can access the main site https://dan.bemowski.info/, but I want to make some changes and I cannot.

    Please let me know if there is any other information you need to aid in fixing this issue.

    • This topic was modified 1 year, 8 months ago by dbemowsk.

    The page I need help with: [log in to see the link]

Viewing 10 replies - 1 through 10 (of 10 total)
  • Look for the error log on your server, to get more details. It should give you the file that the error happened in, so you can determine what is happening. If you can’t find any error logs, you can temporarily enable DEBUG mode to see what you get.
    https://codex.wordpress.org/Editing_wp-config.php#Debug

    Thread Starter dbemowsk

    (@dbemowsk)

    I have had both “define( ‘WP_DEBUG’, true );” and “define( ‘WP_DEBUG_LOG’, true );” set for some time and didn’t realize that I forgot to shut them off last time I needed to debug,so the debug.log file was quite large. I made a backup of that file and started from a fresh one. The only thing I see in there after attempts to go to the plugins page is this entry:

    WordPress database error Table ‘dan_bemowski_info_2.wp_6ts9ct_cleantalk_sessions’ doesn’t exist for query DELETE
    FROM wp_6ts9ct_cleantalk_sessions
    WHERE last_update < NOW() – INTERVAL 172800 SECOND; made by require_once(‘wp-load.php’), require_once(‘wp-config.php’), require_once(‘wp-settings.php’), include_once(‘/plugins/cleantalk-spam-protect/cleantalk.php’), apbct_update_actions, apbct_run_update_actions, apbct_update_to_5_118_0

    I don’t think that came from the plugins page load because I would see that entry every time I try to load the plugins page, but I don’t. I think that is just coming from the cleantalk plugin. I would reinstall the plugin to fix that error, but with not being able to get to the plugins page I can’t. I still get the same error when trying to access the plugins page though even dropping back to PHP 7.2:

    Error thrown
    Cannot unset string offsets

    So the debug.log file doesn’t seem to be telling me anything in regards to that error.

    Thread Starter dbemowsk

    (@dbemowsk)

    So it appears that I get that error in other places in the admin section also. I just tried to go to the edit comments (edit-comments.php) page and got the same error.

    Use your FTP program or your host control panel File Manager to delete the plugins/cleantalk-spam-protect folder. Then see if you can get into the plugins page.

    Thread Starter dbemowsk

    (@dbemowsk)

    Thanks for the help. I transferred that folder locally and then deleted it, but that didn’t help. I still get the same error. I am in the process of trying the same thing with jetpack, but that is quite large so it will take a while. I will post the results.

    Is there a reason you mentioned deleting the cleantalk plugin?

    Thread Starter dbemowsk

    (@dbemowsk)

    Removed Jetpack and that didn’t fix it either. Still get the same error when accessing plugins page. Is there a way to just disable plugins instead of having to delete these folders?

    Is there a reason you mentioned deleting the cleantalk plugin?

    That was the plugin identified in the error message.
    You might have two different errors. With the cleantalk plugin deleted, you shouldn’t be getting those errors for the database table that doesn’t exist.

    You don’t have to download the plugin folder before deleting it. You can always extract the zip file again (install the plugin) to get it back.
    I didn’t think you wanted to delete other plugins that didn’t show errors. The usual protocol is to delete the ones with errors (since you have to get a new version anyway), and rename the folder of ones you want to try a test without. I usually just put an x in front of the name. That deactivates the plugin since it can’t find the folder that is listed in the Active Plugins list in the database. But if you can’t get into the plugins page, you can’t reactivate it without going into the database yourself. You can also try renaming the plugins folder (like ‘xplugins’), to get them all at once, but then you can’t get them back without database manipulation — unless it fixed the problem.

    Maybe you should switch back to PHP 7.2 and run the PHP Compatibility Checker plugin.

    Thread Starter dbemowsk

    (@dbemowsk)

    Sorry, I meant to mention in my last post that the reason I disabled jetpack was because I searched the error that I saw on my screen and found this link:
    https://wordpress.org/support/topic/fatal-error-cannot-unset-string-offsets-5/

    I figured disabling it to test at least ruled that out.

    Thread Starter dbemowsk

    (@dbemowsk)

    So after I put the cleantalk folder back, I have noticed that I am getting more and more spam blog posts and user registrations that the cleantalk plugin was monitoring and defeating. I am wondering if now the cleantalk plugin needs to be re-enabled/activated, which I can’t do because I can’t get to the plugins page. This is the complete debug.log, which I think a lot of these entries seem like they are from when I had the plugin folders removed and it couldn’t access files.

    [21-Jan-2020 01:09:30 UTC] WordPress database error Table ‘dan_bemowski_info_2.wp_6ts9ct_cleantalk_sessions’ doesn’t exist for query DELETE
    FROM wp_6ts9ct_cleantalk_sessions
    WHERE last_update < NOW() – INTERVAL 172800 SECOND; made by require_once(‘wp-load.php’), require_once(‘wp-config.php’), require_once(‘wp-settings.php’), include_once(‘/plugins/cleantalk-spam-protect/cleantalk.php’), apbct_update_actions, apbct_run_update_actions, apbct_update_to_5_118_0
    [21-Jan-2020 04:51:40 UTC] Successfully loaded service schemas from server response. (fetch_service_schemas_from_connect_server)
    [21-Jan-2020 08:29:21 UTC] WordPress database error Deadlock found when trying to get lock; try restarting transaction for query UPDATE wp_6ts9ct_options SET option_value = ‘1579597161’ WHERE option_name = ‘_transient_timeout_12__2951165530’ made by A_WordPress_Base_Url->cache_lookups, C_Photocrati_Transient_Manager::update, C_Photocrati_Transient_Manager->set, set_transient, update_option
    [21-Jan-2020 21:33:57 UTC] WordPress database error Deadlock found when trying to get lock; try restarting transaction for query UPDATE wp_6ts9ct_options SET option_value = ‘1579644237’ WHERE option_name = ‘_transient_timeout_12__2951165530’ made by A_WordPress_Base_Url->cache_lookups, C_Photocrati_Transient_Manager::update, C_Photocrati_Transient_Manager->set, set_transient, update_option
    [21-Jan-2020 23:58:28 UTC] PHP Warning: require_once(/home/dbemowsk/dan.bemowski.info/wp-content/plugins/cleantalk-spam-protect/lib/Cleantalk/Antispam/API.php): failed to open stream: No such file or directory in /home/dbemowsk/dan.bemowski.info/wp-content/plugins/cleantalk-spam-protect/cleantalk.php on line 54
    [21-Jan-2020 23:58:28 UTC] PHP Fatal error: require_once(): Failed opening required ‘/home/dbemowsk/dan.bemowski.info/wp-content/plugins/cleantalk-spam-protect/lib/Cleantalk/Antispam/API.php’ (include_path=’.:’) in /home/dbemowsk/dan.bemowski.info/wp-content/plugins/cleantalk-spam-protect/cleantalk.php on line 54
    [22-Jan-2020 00:18:45 UTC] PHP Warning: require_once(/home/dbemowsk/dan.bemowski.info/wp-content/plugins/jetpack/vendor/composer/autoload_classmap_package.php): failed to open stream: No such file or directory in /home/dbemowsk/dan.bemowski.info/wp-content/plugins/jetpack/vendor/autoload_packages.php on line 126
    [22-Jan-2020 00:18:45 UTC] PHP Fatal error: require_once(): Failed opening required ‘/home/dbemowsk/dan.bemowski.info/wp-content/plugins/jetpack/vendor/composer/autoload_classmap_package.php’ (include_path=’.:’) in /home/dbemowsk/dan.bemowski.info/wp-content/plugins/jetpack/vendor/autoload_packages.php on line 126
    [22-Jan-2020 02:17:08 UTC] WordPress database error Deadlock found when trying to get lock; try restarting transaction for query UPDATE wp_6ts9ct_options SET option_value = ‘1579661228’ WHERE option_name = ‘_transient_timeout_12__2951165530’ made by A_WordPress_Base_Url->cache_lookups, C_Photocrati_Transient_Manager::update, C_Photocrati_Transient_Manager->set, set_transient, update_option

    Thread Starter dbemowsk

    (@dbemowsk)

    So I used your idea of renaming the plugins with an “X” at the beginning of the name to see if I could track down the plugin that was causing the error. Turns out it was the nextgen-gallery plugin. With that plugin folder named Xnextgen-gallery, I can access the plugins page just fine now. I will notify the people at Nextgen to find a resolution.

    Thank you for your help.

Viewing 10 replies - 1 through 10 (of 10 total)
  • The topic ‘Cannot access plugins page in admin section’ is closed to new replies.