Бывают ситуация в которых не особо понятно, по каким причина Интернет-магазин на Prestashop функционирует не так как нужно. Как одни из наиболее частых примеров, когда вы переносите магазин на хостинг заказчика и вместо сверстанной темы вам выводиться пустой экран. Причины могут быть разные, от неправильно выставленных прав доступа к файлам и папка и заканчивая ошибками в программном коде. Для того, чтобы избежать лишних временных затрат в поисках причины некорректного функционирования магазина, разработчики предлагают следующий вариант решения:
1. Включаем отображение ошибок в системе PrestaShop. Для этого в файле config\config.inc.php заменяем строчку:
@ini_set(‘display_errors’, ‘off’);
на строчку
@ini_set(‘display_errors’, ‘on’);
2. Добавляем в файл index.php следующий код:
<?php error_reporting(0);
$old_error_handler = set_error_handler("userErrorHandler");
function userErrorHandler ($errno, $errmsg, $filename, $linenum, $vars)
{
$time=date("d M Y H:i:s");
// Get the error type from the error number
$errortype = array (1 => "Error",
2 => "Warning",
4 => "Parsing Error",
8 => "Notice",
16 => "Core Error",
32 => "Core Warning",
64 => "Compile Error",
128 => "Compile Warning",
256 => "User Error",
512 => "User Warning",
1024 => "User Notice");
$errlevel=$errortype[$errno];
//Write error to log file (CSV format)
$errfile=fopen("errors.csv","a");
fputs($errfile,"\"$time\",\"$filename:
$linenum\",\"($errlevel) $errmsg\"\r\n");
fclose($errfile);
if($errno!=2 && $errno!=8) {
//Terminate script if fatal error
die("A fatal error has occurred. Script execution has been aborted");
}
}
?>
После возникновения каких либо ошибок, вся информация будет записываться в файл errors.csv


