WordPress文章预览顶部出现memcached相关session报错但发布后正常咨询
问题原因
这个警告的核心是关闭memcached扩展后,PHP的会话处理器配置没有同步更新,Enfold主题的portfolio短代码在草稿预览场景下会触发会话初始化,但发布后的公开页面不会调用这段逻辑,因此仅预览时出现报错。
解决步骤
- 优先修改WordPress核心配置:
打开站点根目录的wp-config.php文件,在/* That's all, stop editing! Happy publishing. */注释前添加以下两行代码,强制指定使用默认文件会话处理器:
ini_set('session.save_handler', 'files'); ini_set('session.save_path', '/tmp');
添加后清空站点所有缓存即可生效,不会影响后续主题、WordPress版本更新。
- 若上述方案仍有报错,可临时修改报错的主题文件:
找到路径wp-content/themes/enfold/config-templatebuilder/avia-shortcodes/portfolio/portfolio.php的第50行,把原有的session_start()替换为以下代码,增加会话状态判断+错误抑制:
if (session_status() === PHP_SESSION_NONE) { @session_start(); }
注意这个修改会在Enfold主题更新后被覆盖,建议后续改用子主题覆写对应短代码逻辑来长期生效。
- 排查残留配置:如果修改后还有警告,可联系共享主机服务商确认memcached扩展是否已完全禁用,是否有全局php.ini残留的会话配置未清理,同时清空PHP OPcache、站点缓存后重试。
内容的提问来源于stack exchange,提问作者Robert Thorpe
相关产品推荐
相关产品推荐

