WordPress网站保存菜单时,菜单项丢失缺少一部分,显示位置的勾选设定也被取消了

89次阅读

共计 962 个字符,预计需要花费 3 分钟才能阅读完成。

在 WordPress 站长圈站长在做一个导航网站的菜单时,遇到这样一个问题,当我新新增好菜单保存后,发现 WordPress 网站的菜单都不显示了。经过检查发现,菜单设置的显示位置勾选被取消了,而且本来设置有很多菜单的,现在只有前面的一部分,后面很多都丢失了。第一次出现这种情况,以为只是意外,于是自己又重新添加了所有丢失的菜单。但是没过几天,在站长调整菜单的时候,又一次出现同样的问题。

出现两次 WordPress 网站保存菜单时,菜单丢失的问题,这就很奇怪了。于是站长就到网上搜索看看有没有人遇到这样的问题,有什么解决方法。遇到这种情况一般是由于菜单项比较多,比如我的有将近 100 多个菜单。导致菜单丢失的原因是服务器问题,php 5.3.9 后增加了一项叫做 max_input_vars,默认值 1000,即表单一次可以提交 1000 个变量。超过了只能被截断,也就是说传到 WordPress 的数据被服务器截断丢失了。

WordPress 网站保存菜单时,菜单项丢失缺少一部分,显示位置的勾选设定也被取消了

下面站长把找到的解决方法分享给大家

办法一:

打开 php.ini 搜索 max_input_vars , 其中 max_input_vars = 1000 后面的 1000 修改为 2000 或者更大的数字,并且去掉前面的分号)

php.ini 文件的目录一般是:/www/server/php/73/etc/php.ini,其中 73 是 php 的版本,比如你的如果是 8.0 版本那就是 80

WordPress 网站保存菜单时,菜单项丢失缺少一部分,显示位置的勾选设定也被取消了 WordPress 网站保存菜单时,菜单项丢失缺少一部分,显示位置的勾选设定也被取消了

方法二:

拷贝一份 php.ini,放到 wp-admin 目录下,在 php.ini 里加上这几项,问题就可以解决,放到网站根目录下只能改变前台的设置,影响不到后台。

max_input_vars = 2000    suhosin.post.max_vars = 2000    suhosin.request.max_vars = 2000

建议可以两个都更改或者直接修改 php.ini 文件,因为你如果是复制 php.ini 放到 wp-admin 目录下,这样你调整更新主题就需要重新调整。

这个问题一般也就出现在像 WordPress 导航网站这类,菜单分类比较多的网站。站长就是导航网站菜单分类有 10 多个一级目录,每个一级目录下面有近 10 多个二级目录。站长出现这种问题并不是一修改保存就丢失,而是间断性的出现,第一次出现菜单丢失了之后,中间有段时间保存没有出现菜单丢失问题。如果你也遇到类似情况,不妨试试上面的方法。

正文完
 0