如何修复WordPress调试错误?
开发人员经常遇到错误,例如数据库连接失败,但调试日志中将不会包含任何内容。这是因为WordPress对于不同的…
开发人员经常遇到错误,例如数据库连接失败,但调试日志中将不会包含任何内容。这是因为WordPress对于不同的调试方法具有不同的全局PHP变量。那么如何修复WordPress调试错误?
调试WordPress JavaScript
如果您有WordPress网站,则很有可能会使用JavaScript。对于较新的开发人员,从本质上讲,这是支持网站交互元素的语言。JavaScript因调试很繁琐而臭名昭著。这是因为现代站点经常使用基于JavaScript的框架,这进一步使警告和错误消息变得更加复杂。
不幸的是,这并不是使调试WordPress JavaScript困难的唯一原因。JavaScript有两种基本形式:异步或“ AJAX”,以及常规JavaScript。常规JavaScript以线性方式运行;它不会运行一个功能,直到执行完一个功能为止。尽管这可能在Web的早期阶段就已经解决了,但对于Web应用程序并没有减少。
另一方面,AJAX在WordPress网站的后台运行。它允许您运行JavaScript函数并等待其输出,但不会阻止其他函数运行。通常有必要防止站点锁定。
WordPress让我们使用另一个PHP全局变量来表示我们要调试脚本的原因是因为这种调试方法会输出大量数据。这也是因为JavaScript和CSS在客户端运行,而PHP在服务器端运行。为了输出由于JavaScript和CSS而导致WordPress遇到的每个错误,只需添加以下行:
define( ‘SCRIPT_DEBUG’, true);
这将同时显示JavaScript和CSS(样式表)错误。它还可以帮助执行更复杂的AJAX操作。
解决数据问题
几乎每个网站都从数据库中获取信息。WordPress有几个数据表。一些站点将数据库存储在单独的服务器上,而某些站点将它们保留在同一服务器上。由于所有配置都不相同,因此数据库连接中总有可能出现问题。
如果您收到一条错误消息,指出WordPress无法连接到数据库,或者您发现数据没有正确提取,则可能需要调试。只需使用标准的WordPress调试变量,您可能会注意到在遇到与数据库相关的错误时不会记录任何内容。
这是因为WordPress将与数据库相关的错误与所有其他错误分开。数据库错误消息通常包含敏感信息,而WordPress的开发人员希望确保您不会意外将私人信息泄露给公众!
为了开始调试WordPress数据库问题,您需要在wp-config.php文件中添加另一行:
define( ‘SAVEQUERIES’, true );
深入数据库调试
与我们的其他全局WordPress调试变量不同,我们需要特别注意这一点。“ SAVEQUERIES”告诉WordPress,我们想查看每个查询的运行情况并返回结果。这将严重损害站点范围的性能!请注意不要在高峰时间在服务器上运行此程序,并在不需要时将其关闭。
它还存储了一些不同的输出。WordPress使用PHP字符串数组来查看数据库调试信息。它位于名为$wpdb的PHP全局变量和称为query的成员数组中。您可以通过打印$wpdb->queries的内容来实现
调试WordPress插件
与其他平台相比,WordPress的一个主要优势是其丰富的插件库,可以执行几乎所有操作。您可能正在阅读此书,并且已经对需要不断更改文件内容的后勤问题感到头痛。值得庆幸的是,一些插件可以帮助我们调试WordPress!有两种特别受欢迎的产品使它变得轻而易举。
WP Debugging
位于WordPress网站上,WP Debugging是最著名的WordPress调试插件之一。它实质上使我们已经讨论过的过程自动化。在仪表板上单击几下,即可在站点上打开和关闭所有这些PHP全局变量。
安装此插件时,还将安装一系列它所依赖的插件。总体而言,它们使您可以记录日志并帮助您解释遇到的错误。
这个工具非常适合启用调试过程,但是为了调试您自己的插件并轻松查看与数据库相关的WordPress调试信息,您还需要另一个插件。
Debug Bar
顾名思义,Debug Bar只是WordPress网站管理面板上的一个工具栏。它可以与WP Debugging结合使用。
它为更高级的开发人员提供了工具,使他们可以查看缓存,已输出的查询,查询的结果以及更高级的信息。就像我们提到的那样,WordPress将所有数据库调试信息放入PHP全局变量中。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。
还没有任何评论,赶紧来占个楼吧!