I noticed that all my plugins have disappeared. The files are physically there and permissions unchanged at 0755 but noticed that all the PHP files now have a Zend Framework prefix dump of code, which puzzles me.
Why did all plugins become invisible?
Why is there a dump of Zend code at the start of each PHP file?
I am slowly removing each plugin file set and reinstalling, so they are showing up again.
I didn't solve the mystery, but I had to delete the plugins folders via cPanel and add them one by one. I couldn't install the "missing" ones while all the folders existed.
BTW, while WP was telling me that there were no plugins, they were still functioning and doing their work.
I still haven't found out why every php file on the server now has a dump of Zend code at the beginning. My cursory attempts to read up on it tell me that it's the best thing since sliced bread for programming but not why it needs to attach itself to every PHP file.
I found out later that I had an old version of Timthumb, which was vulnerable and led to every discoverable PHP file on this domain to be appended by that Zend code. I had to strip it out and kill Timthumb (I know there is a new one), but my site is still probed every minute for xmlrpc.php (which I have deleted). Ended up blocking whole slabs of IP addresses.
doesnt wordpress look for the big block of comments at the top of the plugin files? that's the bit that tells wordpress what its name is, who wrote it, the version number, and all of that kind of stuff. maybe just reinstating the comments at the top of the file will do the trick.
if this Zend thing has overwritten those, then that probably explains why they dont show up in the plugins menu -- wordpress cant find any information about them anymore.