Jump to content

Ценные замечания команде разработчиков


Recommended Posts

Всем добрый день!

 

Вот специальный топик, где вы можете оставлять замечания для команды разработчиков.

 

Можете писать прямо в теме или же заполнить небольшой формуляр http://www.prestasho...op-localization.

 

Заранее огромное спасибо!!!

Link to comment
Share on other sites

Саша, спросите там, это действительно нельзя сделать иначе, как сделано в ПрестаШопе — Home, главная страница сайта, является и главной товарной категорией. Да, именно родительской товарной категорией для прочих категорий, которые рассматриваются в магазине как главные. Главные? Получается, что нет. Есть ещё главнее. Но Главная страница сайта — вообще не товарная категория! В меню все прочие категории выпадают из закладки «Главная», что и выглядит очень некрасиво. Потому что должны выпадать из Каталога... Постоянно же на форуме задаются вопросы, как это исправить!..

 

А этот самый каталог должен иметь и свою страницу. Раньше такая была, но в пятой версии её упразднили. С одной стороны это правильно; многим она только мешала. Но есть и те, кому её очень нехватает... Тут должна оставаться возможность выбора для пользователя... Какое-то решение, позволяющее легко её отстёгивать за ненадобностью. Но убрать её для всех — это неправильно!

Link to comment
Share on other sites

Как долго обрабатываются пулл-реквесты?

Пару месяцев назад отправил пару исправлений для системы файлового кэширования без которых она просто не работает. Они до сих пор в открытом состоянии.

 

Есть еще пару интересных пулл-реквестов (не моих) с таким же сроком, например добавление комбинаций к загружаемым товарам. Тоже находятся в зависшем состоянии - не отклонены, но и не приняты.

 

В официальную версию вообще планируете русский язык добавлять?

Link to comment
Share on other sites

Да! Когда будет русский язык в официальной версии? Интересно, что в Испании ПрестаШоп пока уступает по популярности Мадженто, но испанский в ПрестаШопе есть. В России ПрестаШоп ещё два года назад был вдвое популярнее Мадженто, но русского — нет... Это отчего? Не знаете? Вот, Вам пример. Спрашивается, сколько наших в Испании и сколько каких-нибудь маори с Новой Зеландии или хауса из Африки? Этим нечего вообще искать на чужбине, они и дома живут вполне благополучно... Поэтому тут их — нет. Но зайдите в любое локуторио — поддержка языков маори и хауса, как и любых других, у компьютера имеется, русский шрифт «выломан». Вообще-то мы с ними по этому ругаемся... Но каждый раз слышим: «Хорошо-хорошо!.. Придёт мастер — поставит...» А зачем мастеру ставить, когда это он как раз и удалил?! Потому что нет такой опции при установке винды «все языки, кроме русского». Раз поддерживаются все языки, а русского там нет, значит его просто удалили. И нас в ПрестаШопе тоже просто не хотят...

Link to comment
Share on other sites

Даже не знаю, удобно ли будет все хотелки в одной ветке собирать, но можно попробовать.

При использовании блока многоуровневой фильтрации становиться особо актуальным порядок следования предустановленных значений характеристик.

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

 

a7cde8ca126fd9dbeb4f957a53da75e7bcdb666a.jpeg

Link to comment
Share on other sites

Еще простая доработка. При формировании комбинаций есть очень ограниченный набор свойств продукта, которые могут измениться для комбинации.

df60c2ec7e997bcef5b42347c8eef4b78e2d0930.jpeg

Но на практике есть потребность изменять значительно больше данных.

Пример приведу с товаром обыкновенной электролампочки.

В ассортименте есть куча однотипных ламп, которые отличаются только мощностью. Логично создать комбинацию, что б покупатель просто мог выбрать нужный тип лампы и указать непосредственно мощность. Однако при изменении мощность должны измениться и некоторые характеристики (features): Ток, Световой поток. Но реализовать это сейчас нет возможности, поскольку для комбинаций можно редактировать ограниченное количество данных.

Предложение: Для комбинации предоставить возможность редактировать все данные товара (в т.ч. и features)

Link to comment
Share on other sites

Кстати, Александра, рекомендую обратить внимание на сервис http://copiny.com для работы с предложениями. Просто, недорого и удобно. Кроме того, будете видеть реальные рейтинги предложений :rolleyes:

Link to comment
Share on other sites

Очень не хватает автоинкрементного поля с первичным ключом в таблице "cart_product". Для поиска записей требуется использовать комбинацию полей id_product, id_product_attribute, id_address_delivery, что вовсе неудобно при написании модулей, связанных с корзиной.

Link to comment
Share on other sites

Указывать престе при импорте автоматически создавать все виды картинок (маленькая, большая...) или в ручную, путем прописывания ссылок своих на них! Сделать ссылки на категории и товар с полным путем с перечислением всех под категорий вложенности...чтобы была возможность убирать ID из ссылок.

Link to comment
Share on other sites

В классе "OrderCore" есть метод "getDocuments" и его можно вызвать всего один раз, т.к. внутри его объявляется функция! Вот этот метод:

public function getDocuments()
{
 $invoices = $this->getInvoicesCollection()->getResults();
 $delivery_slips = $this->getDeliverySlipsCollection()->getResults();
 // @TODO review
 foreach ($delivery_slips as $delivery)
 {
  $delivery->is_delivery = true;
  $delivery->date_add = $delivery->delivery_date;
 }
 $order_slips = $this->getOrderSlipsCollection()->getResults();
 // @TODO review
 function sortDocuments($a, $
 {
  if ($a->date_add == $b->date_add)
   return 0;
  return ($a->date_add < $b->date_add) ? -1 : 1;
 }
 $documents = array_merge($invoices, $order_slips, $delivery_slips);
 usort($documents, 'sortDocuments');
 return $documents;
}

 

Я считаю, что такие косяки не допустимы на уровне PS.

Как минимум можно применить замыкание:

 

public function getDocuments()
{
 $invoices = $this->getInvoicesCollection()->getResults();
 $delivery_slips = $this->getDeliverySlipsCollection()->getResults();
 // @TODO review
 foreach ($delivery_slips as $delivery)
 {
  $delivery->is_delivery = true;
  $delivery->date_add = $delivery->delivery_date;
 }
 $order_slips = $this->getOrderSlipsCollection()->getResults();
 $documents = array_merge($invoices, $order_slips, $delivery_slips);
 usort($documents, function ($a, $ {
  if ($a->date_add == $b->date_add)
   return 0;
  return ($a->date_add < $b->date_add) ? -1 : 1;
 });
 return $documents;
}

 

Или использовать кэш:

 

   protected $_documents = null;

public function getDocuments()
{
    if (!is_null($this->_documents)) {
	    return $this->_documents;
    }

 $invoices = $this->getInvoicesCollection()->getResults();
 $delivery_slips = $this->getDeliverySlipsCollection()->getResults();
 // @TODO review
 foreach ($delivery_slips as $delivery)
 {
  $delivery->is_delivery = true;
  $delivery->date_add = $delivery->delivery_date;
 }
 $order_slips = $this->getOrderSlipsCollection()->getResults();
 // @TODO review
 function sortDocuments($a, $
 {
  if ($a->date_add == $b->date_add)
   return 0;
  return ($a->date_add < $b->date_add) ? -1 : 1;
 }
 $documents = array_merge($invoices, $order_slips, $delivery_slips);
 usort($documents, 'sortDocuments');
    $this->_documents = $documents;
 return $documents;
}

 

Приходится реврайтить класс, чего очень не хочется делать....

Edited by Dzianis Yurevich (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...