Может ли кто-нибудь указать мне в правильном направлении для отображения элементов в порядке в алфавитном порядке, а не в хронологическом порядке?Magento изменить порядок сортировки «упорядоченных предметов»
Я в основном нуждаюсь в этом для счета-фактуры в формате pdf (который я уже изменил в соответствии с моими потребностями, но я застрял на этом). Я понимаю, что мне может потребоваться изменить способ сортировки/упорядочения счета-фактуры полностью, а не только на производстве в формате pdf.
Обычно «упорядоченные предметы» как в корзине клиентов, так и в счете-фактуре находятся в хронологическом порядке сортировки, когда они были добавлены в корзину, однако я бы хотел, чтобы они сортировали по SKU или Description/Title, чтобы помочь с подбором. Или даже сортировка по категориям будет улучшением.
Если кто-то может помочь в этом, я буду над луной, поскольку последние два дня я пытался выяснить это и никуда не пропал.
Спасибо за чтение.
О, я использую 1,5 CE. Еще раз спасибо.
Развейте:
Я нашел код, который сортирует заказ на создание счета-фактуры:
<?php $_items = $this->getInvoice()->getAllItems()>
<?php $_i=0;foreach ($_items as $_item): ?>
<?php if ($_item->getOrderItem()->getParentItem()) continue; else $_i++; ?>
<tbody class="<?php echo $_i%2?'even':'odd' ?>">
<?php echo $this->getItemHtml($_item) ?>
<?php echo $this->getItemExtraInfoHtml($_item->getOrderItem()) ?>
</tbody>
<?php endforeach; ?>
И заменить его следующим образом:
<?php $_items = $this->getInvoice()->getAllItems() ?>
<?php $_sortedItems = array(); ?>
<?php foreach ($_items as $_item) : ?>
<?php $_sortedItems[$_item->getSku()] = $_item;?>
<?php endforeach;?>
<?php ksort($_sortedItems);>
<?php $i=0;foreach ($_sortedItems as $_item):?>
<?php if ($_item->getParentItem()) continue; else $i++;?>
<tbody class="<?php echo $i%2?'even':'odd' ?>">
<?php echo $this->getItemHtml($_item) ?>
<?php echo $this->getItemExtraInfoHtml($_item->getOrderItem()) ?>
</tbody>
<?php endforeach; ?>
Однако теперь счета производит A, например, сначала, как и следовало бы, однако на самом деле он показывает только первый элемент. Остальная часть счета-фактуры меньше! :(
Я сделал очень похожий код изменения в файл, который производит таблицу заказов в adminhtml и это прекрасно работает! ?? ?? ?? спутать Может быть кто-то может помочь мне дальше, пожалуйста ??
при дальнейшем рассмотрении, очевидно, что единственный оставшийся видимый элемент на самом деле простой продукт, и конфигурируемые продукты исчезают из счета! ???
_ __ редактировать
Я решил это!
Причина, по которой я получал только простые продукты, была ключом! Вместо сортировки по SKU я просто отсортировал список по имени, используя getName() вместо getSKU в приведенном выше коде !!! : D
Я не использую Magento, поэтому я только угадывая здесь. Возможно, элементы являются парами ключ-значение, ключи - то, что идентифицирует их, и ценность - это те тексты, которые вы видите. Возможно, порядок сортировки задается на основе ключа, и нужно настроить его сортировку по значению. Опять же, я просто догадываюсь, я могу ошибаться. –