jov*_*van 7 php smarty prestashop
我一直在使用PHP一段时间,但对Smarty来说却相当新.
我正在使用Prestashop,我注意到Smarty似乎吃掉了所有PHP错误 - 当PHP代码出错时,.tpl文件只输出一个空白页面.我一直在尝试,但即使出现错误,我也无法让Smarty显示PHP代码输出.
PHP错误报告设置为显示错误.
所以,举个例子,假设这是example.php文件:
<?php
//included classes etc go here, irrelevant for this issue
error_reporting(E_ALL ^ E_NOTICE);
echo obvious wrong syntax"
?>
此文件连接到example.tpl,它适合模板块中的输出.
显然,它应该抛出一个错误.如何让Smarty实际显示该错误?
Ser*_*Guk 13
要激活调试模式,请转到 config/config.inc.php
找到以下行和恰克off到on的第一个设置为true第二
/* Debug only */
@ini_set('display_errors', 'on');
define('_PS_DEBUG_SQL_', true);
这将显示PHP和SQL错误(这可能足以让您解析"空白页面").
prestashop网站上还有一篇关于p()和d()方法以及如何跟踪异常的博客文章
要在早于1.5的Prestashop版本中激活模板调试,请转至config/smarty.config.inc.php
找到以下行并将其设置为true
$smarty->debugging = true;
刷新页面时,themes/debug.tpl应该进行渲染.
要在Prestashop 1.5+中激活模板调试,您可以通过"管理"面板启用Smarty调试
首选项>性能> Smarty
并设置,Always open console但控制台将为每个人打开(不适合现场网站:))
或者设置Open console with URL parameter (SMARTY_DEBUG)并添加?SMARTY_DEBUG到URL的末尾以查看控制台
希望这可以帮助.
| 归档时间: | 
 | 
| 查看次数: | 15364 次 | 
| 最近记录: |