If you are going to add too many menu items in your WordPress then beware, on saving your menu you will lost menu items that are beyond WordPress menu items limit. This thing had happened to us and we did a lot of extra work to add those menu items again but only after increasing this limit.

This limit is not imposed by WordPress but by your web hosting server because of some security reasons. In PHP, there is a thing called post vars that controls menu items. By default maximum post vars are much limited as most of the websites require only a few menu items. But if you are running a big news website, or an eCommerce website most probably you will need to have several menu items in your menu.

Very Large WordPress Menu

It is very easy to increase number of post vars using php.ini

All you need to do is adding a piece of code in your php.ini file. Keep in mind that different web hosts support different kind of methods and we have listed all here;

Increasing max_input_vars

To increase input_vars add the following code in your php.ini file

max_input_vars = 3000;

Note – Create a text file name php.ini and add this code to that file and place this file in your WordPress root. If your host doesn’t support custom php.ini file get their support to add this code ot php.ini file

If your server is using Suhosin

If your hosting server has Suhosin running, it will affect your WordPress menu limit and you need to add the following code in your php.ini file;

suhosin.post.max_vars = 5000

suhosin.request.max_vars = 5000

Other methods

If above given workarounds don’t work, you can also try some other;

1.Add php.ini in wp-admin folder

Create a php.ini file with the below given code and put it into wp-admin folder

max_input_vars = 3000;

2.Add .user.ini file

Create a file .user.ini and add the following code to it and try placing it in WordPress root or in wp-admin folder;

max_input_vars = 5000;

Hopefully one of the method should work for you.

If you are unable to create a php.ini file?

However, it would be a great bullshit if any host doesn’t allow creating custom php.ini files.

Get your Web Hosting support team and ask them to add the code to php.ini file or ask them to enable custom php.ini creation. It may be possible that your host deny to add custom code to php.ini file or to enable creation your own php.ini file. In that condition you should consider switching to a better host as you are free to transfer your website anytime to any host.


Easy ways to transfer your WordPress without any technical skill

Comparison of popular web hosts

Tip – Keep your WordPress menu backed up if it is very large

Keep backup of your menu every time you make a change. There is only one plugin that lets you take backup of WordPress menus and you can import export WordPress in emergencies.

  • Install and activate the plugin
  • Go to Tools > Export and here you will find an additional option of exporting Menu items added by this plugin

WordPress Menu Exporter

  • Choose this option and generate xml export file and save it to your PC
  • You can import this file if you lost your menu items in future due to any reason. You can import it in a way you import your WordPress XML back file (tools > Import > WordPress > Upload XML file generated by the plugin)

Download Mexu Exporter Plugin

[emaillocker id=2873]Download from Dropbox  – Download from WordPress.org[/emaillocker]

Still unable to increase menu limit?. Feel free to consider this post as a support thread and ask questions in comments section below. We will happily assist you replying your questions.