Límite de menú: no se pueden agregar nuevos elementos
Estoy ejecutando WP 3.4.2 en un VPS. Cuando migré a este servidor VPS e importé todos mis datos de WP desde el antiguo, los menús funcionaban correctamente. Sin embargo, por alguna razón, no puedo editar/agregar elementos a los menús, y algunos ítems han sido eliminados. No importa cuántas veces intente volver a agregar esos elementos, no aparecen. WP no reporta ningún error. Cuando los agrego nuevamente y hago clic en el botón "Guardar menú", después de una larga pausa (30-45 seg) WP simplemente dice "El menú Principal ha sido actualizado". Pero los nuevos elementos faltan, tanto en los menús del sitio como en la configuración de menús de WP.
Originalmente, cuando migré a este VPS, había 9 elementos principales en el menú y unos 90 subelementos - aproximadamente 100 ítems en total. Todo se mostraba correctamente.
Ahora estoy limitado a 88 elementos de menú. Solo puedo agregar un elemento eliminando otro.
No estoy seguro de cuándo comenzó este problema, porque no editamos el menú con frecuencia. Se notó por primera vez ayer que algunos elementos del menú habían desaparecido, lo que podría coincidir con que alguien agregó o editó un elemento del menú. Pero hemos estado ejecutando en este nuevo VPS durante aproximadamente un mes.
Encontré en otra discusión del foro una referencia a suhosin que puede causar problemas de límite de menú en WP 3.x, pero eso no es parte de nuestra instalación de PHP.
He probado Safari y Firefox (OS X). Mismos resultados con ambos.

Tuve un problema similar con el servidor de un cliente, y la solución en su caso fue incrementar la configuración de max_input_vars
de PHP en el archivo php.ini
.
El número de elementos del menú multiplicado por la cantidad de atributos de cada elemento estaba agotando las variables de entrada permitidas, por lo que el servidor estaba truncando silenciosamente la solicitud, lo que resultaba en que los elementos del menú simplemente desaparecían al final.

Este fue el ticket. Agregar max_input_vars = 2000
a mi php.ini y reiniciar el servidor me permitió agregar los elementos truncados del menú. (Curiosamente, ocasionalmente obtengo errores 404 al actualizar el menú. Es decir, la actualización vuelve a la misma página de WP /wp-admin/nav-menus.php, pero muestra un error 404 en lugar de la página de edición del menú. Sin embargo, a pesar de eso, el menú se actualizó correctamente).

Este mismo problema fue el tema de un artículo reciente por WPBeginner
Necesitas editar tu archivo php.ini
. Como estás alojado en un VPS, deberías tener acceso a este. De lo contrario, pídele amablemente a tu proveedor de hosting que lo haga por ti.
suhosin.post.max_vars = 5000
suhosin.request.max_vars = 5000
También hay un ticket de trac (#14134) que resalta este problema.

Como se explicó en la pregunta original, mi sitio no utiliza suhosin. Sin embargo, hay una configuración relacionada de PHP, max_input_vars, que tuvo que ajustarse. Ver el comentario de @Milo arriba.

Me he encontrado con este problema en varias ocasiones. Prueba esta solución rápida:
- Abre tu editor de texto favorito (Notepad, Dreamweaver, etc.)
- Crea un archivo llamado "php.ini"
- Pega el siguiente código:
php_value max_input_vars 7000
- Guarda el archivo
- Sube el archivo a la carpeta raíz de tu sitio mediante FTP (Filezilla, Rush FTP, etc.)
¡Eso es todo! :)

Algunas soluciones:
1) Simplemente cambia los menús no desde el panel de ADMIN, sino desde el "personalizador" (porque utiliza una llamada AJAX)
2) Intenta añadir php_value max_input_vars 7000
en el archivo .htaccess
(o php.ini) [cuando estés en hosting compartido]
3) Intenta aumentar la memoria, añade esto en wp-config.php
: define("WP_MEMORY_LIMIT", "128M");
