日拱一卒无有尽,功不唐捐终入海

wordpress不能显示已安装主题列表的解决方案

PHP CMS Sam 917℃ 0评论

在服务器上配置wordpress时,发现一个问题,就是下载安装好的好几个主题,都不能在wp后台的“外观——>主题”上显示出来,而只能显示当前正在使用的主题。

①发现在/wp-includes/theme.php文件中有一个search_theme_directories()方法【方法作用:查询、获取所有主题目录】,大概在line:468,有这样一句代码 “$dirs = @ scandir( $theme_root );”,是用来列出 主题根目录 下的所有主题文件。

② 通过在这行代码后下断点,发现scandir()返回值为NULL。

③猜想:既然没有返回false,而是null,结果不符合PHP官方手册给出的放回结果,联想到有可能是scandir方法被禁用了。

④打开php.ini文件,找到disable_functions配置项,结果,scandir果然安逸的躺在那,得让它起来干活,所以把scandir去掉,然后重启php-fpm

⑤刷新wordpress,奇迹出现了,所有的主题都显露原形了,哈哈哈~~~

转载请注明:PHP笔记 » wordpress不能显示已安装主题列表的解决方案

喜欢 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)