【发布时间】:2020-08-28 05:41:49
【问题描述】:
在过去的几个月里,我注意到安装 Wordpress 时出现了一个奇怪的错误。它随机显示现有帖子的 404 错误页面。错误的频率没有规律,受影响的页面包括首页、帖子、页面和自定义帖子页面。
错误日志显示以下条目:
PHP Warning: Use of undefined constant STYLESHEETPATH - assumed 'STYLESHEETPATH' (this will throw an Error in a future version of PHP) in /path/wp-includes/template.php on line 634
PHP Warning: Use of undefined constant TEMPLATEPATH - assumed 'TEMPLATEPATH' (this will throw an Error in a future version of PHP) in /path/wp-includes/template.php on line 637
我在 404.php 模板中添加了一些进一步的调试代码,并注意到当错误发生时,$wp->matched_rule 和 $wp->matched_query 都是空的。几分钟后重新加载页面时,问题消失并再次显示正确的内容。
安装了一些大型插件可以在其中发挥作用,包括 WPML、W3 Total Cache 和 WooCommerce。我在同一个网络服务器上设置了一个暂存系统,但问题只出现在实时系统上,因此高流量(每天 40,000 次点击)和大型数据库(wp_posts 有 400,000 个条目)也可能是一个因素。不幸的是,我无法禁用实时系统上的插件进行调试。
任何有关此问题可能原因的帮助将不胜感激。谢谢!
【问题讨论】: