Вы здесь

PrestaShop – при добавлении товара бесконечно крутится кнопка сохранить.


Приветствую, столкнулся тут с багом CMS для создания интернет магазинов PrestaShop. Баг заключается в следующем – при попытке добавить товар из панели администратора, не активны кнопки «сохранить» и «сохранить и остаться», то есть они постоянно крутятся, как будто что то не загрузилось. При чем происходит такое не всегда, при обновлении страницы все может быть нормально, но ошибка возникает в 70% случаев. Ниже я покажу как эту ошибку можно обойти.

Как это выглядит показано ниже на скриншоте:

Во первых хотелось бы сказать, из за чего она возникает. В одном из обновлений PrestaShop разработчики изменили механизм добавления товара. После обновления, при добавлении товара при помощи ajax загружаются все вкладки добавления товара. И если хотя бы одна страница вернет ошибку, то загрузка зависает. В причинах периодически возникающих ошибок я не разбирался, скажу лишь, что пробовал отключать модули, менять версии PHP, изменять настройки PHP (выделяемую память, количество запросов и т.п.), и это не помогло.

В итоге нашлось довольно «топорное» решение, которое может привести к другим ошибкам во время добавления товара, но бегло протестировав добавление товаров, после нижеописанных действий, ошибок не возникло, товары добавлялись нормально.

В общем что бы исправить ошибку бесконечно крутящихся/загружающихся кнопок в PrestaShop нужно изменить все файлы, с расширением .inc лежащие в папке admin/themes/default/template/controllers/products

В этих файлах нужно найти параметры:

<button type="submit" name="submitAddproductAndStay" class="btn btn-default pull-right" disabled="disabled"><i class="process-icon-loading"></i> {l s='Save and stay'}</button>
<button type="submit" name="submitAddproductAndStay" class="btn btn-default pull-right" disabled="disabled"><i class="process-icon-loading"></i> {l s='Save and stay'}</button>

И заменить их на:

<button type="submit" name="submitAddproduct" class="btn btn-default pull-right"><i class="process-icon-save"></i> {l s='Save'}</button>
<button type="submit" name="submitAddproductAndStay" class="btn btn-default pull-right"><i class="process-icon-save"></i> {l s='Save and stay'}</button>

То есть нужно убрать disabled="disabled" и изменить class="process-icon-loading" на class="process-icon-save"

После этого добавление товаров будет работать нормально.

1 0

Поделитесь статьей с друзьями в соц. сетях, возможно, она будет им полезна.


Если вам помогла статья, вы можете >>отблагодарить автора<<


Комментарии

Друг! ты РЕАЛЬНО КРУТ! Я понимаю, что это "костыль", но это единственное решение, которое помогло. Пока только отредактировал файлы - не знаю, какие баги могут с этим возникнуть, но кнопка "сохранить" активна и работает. Любые альтерналивные решения по данно й проблеме не помогли.PS версия 1.6.1.13. Проблема возникла после перевода сайта на https. ХЗ, с чем это связано.. Преста - она такая Преста )))Спрашивали о версии 1.6: автор все верно описал. Строки надо искать в tpl файлах. Только автор немного ошибся в строке с кнопкой "сохранить". искать надо строку<button type="submit" name="submitAddproduct" class="btn btn-default pull-right" disabled="disabled"><i class="process-icon-loading"></i> {l s='Save'}</button> 

0 0