Okay, I can answer the main questions here, but I have to tell you, there is some technical jargon involved. No getting around it.
Here's the error messages you posted:
Warning: Unknown: open(/tmp/sess_ee22848894927abd6f905697457fa2cc, O_RDWR) failed: Permission denied (13) in Unknown on line 0
Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0
First, that error is coming from your webserver. Specifically, it is telling you that the session.save_path setting in the PHP configuration is set to a directory (
/tmp, in this case), that you don't have permission to write files to.
What does that mean? Bottom line: it means your server is configured incorrectly and you need to complain about it to your web hosting company. This is a problem in the underlying server configuration. If they won't fix it or say that it is somebody else's problem or that it is not supported in some way, then they are feeding you a total bunch of nonsense and I would highly recommend getting a better web hosting company in such a case.
Next, the problem with your menu not saving is also a server problem, but a different one. Basically, some servers have configurations that severely limit the number of variables that the page can send to them. The upshot of this is that when the menu you're making grows beyond a certain number of items, it can't send updates to it anymore, as you have discovered.
This is a known issue in WordPress. Recent updates have reduced the number of variables being sent, and thus increased the size of the possible menus on servers with these configurations, but the underlying problem isn't exactly fixable by WordPress itself at this point in time.
The most common cause is using "suhosin" on the server with a configuration that limits the number of "post vars". Changing the configuration to increase this limit, or disable it entirely, is the only real solution at present. Again, this comes back to asking your web host how they can help you.
TL;DR: Talk to your web host and say this:
- I need the web server to have PHP Sessions configured correctly (session.save_path).
- I need the web server to have display_errors set to "false".
- I need the web server to have suhosin disabled, or configured to have a higher limit on the number of suhosin.post.max_vars.
They may say that you can do these things yourself via a custom php.ini file or via the .htaccess. Or they may say that they can't do it at all.