#prestashop-1.7
Вопрос:
Магазин Prestashop показывает ошибку 500 после того, как клиент заполняет форму регистрации адреса и нажимает кнопку Сохранить. Я перевел его в режим отладки, и появилось сообщение о прикрепленном изображении. Кто-нибудь может помочь мне решить эту проблему?
Комментарии:
1. вы можете отредактировать упомянутый файл? в строке 62 что-то не так с ключом «имя»
2. пожалуйста, воздержитесь от добавления изображений с внешними ссылками, вместо этого добавьте ошибку /код
Ответ №1:
К сожалению, с учетом предоставленной информации дать окончательный ответ не представляется возможным. Однако очевидно одно: в шаблоне address-form.tpl
Prestashop пытается получить доступ к некоторому массиву с индексом name
, но имя там не определено.
Я проверил ваш сайт dadpet.com.br
, и он использует classic
тему, так что маловероятно, что в нем есть какая-либо ошибка программирования. В файле themes/classic/templates/checkout/_partials/address-form.tpl
(этот шаблон используется для отображения полей адресной формы) есть только один экземпляр, в котором name
осуществляется доступ к индексу, и именно там он проверяет, является ли имя поля псевдонимом:
{if $field.name eq "alias" and $customer.is_guest}
{* we don't ask for alias here if customer is not registered *}
{else}
{$smarty.block.parent}
{/if}
Вы можете решить эту проблему, проверив, установлено ли name
значение, изменив инструкцию if:
{if isset($field.name) and $field.name eq "alias" and $customer.is_guest}
Вы не получите ошибку, но основная проблема заключается в том, что в некотором поле адреса не задано имя. Возможно, вы пытались добавить какое-то пользовательское поле или какой-то модуль добавляет его, но не строит его должным образом.