Magento - 按位置对PDF发票产品进行排序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Magento - 按位置对PDF发票产品进行排序相关的知识,希望对你有一定的参考价值。

我正在为PDF发票制作Magento 1的解决方案。我们希望发票显示按stock_location排序的产品。我们所有的位置都以字母A,B,C等开头。然后是一些数字。

我希望发票按字母表显示产品,这样当我们找到产品时,我们从A到Z开始,所以你从上到下知道。我只是想弄清楚如何解决这个问题?

foreach ($invoice->getAllItems() as $item){
    if ($item->getOrderItem()->getParentItem()) {
        continue;
    }
    /* Draw item */
    $this->_drawItem($item, $page, $order);
    $page = end($pdf->pages);
}

其他任何人都想要这个,也许有一个线索我应该走哪条路? :)

  • 谢谢你的时间。
答案

我不知道怎么能在Magento做到这一点,但我分享一些想法,你怎么能在php中这样做尝试这样.hope它会对你有所帮助

$response[] = array(
                        'product_id' => $stock->product_id,
                        'product_name' => $stock->product_name,
                        'stock_id' => $stock->stock_id,
                        'stock_location' => $stock->stock_location,

                        );
                    }

                foreach ($response as $rec) {
                    $stock_location[] = $rec['stock_location'];
                    $title[] = strtolower($rec['product_name']);
                }
                //print_r($stock_location);

                array_multisort($stock_location, SORT_ASC, SORT_NUMERIC, $title, SORT_ASC, SORT_STRING, $response);

                print_r($response);
另一答案

找到了解决方案:

$items = $invoice->getAllItems();
        $sortedItems = array();

        foreach ($items as $item) {
            $prod = Mage::getModel('catalog/product')->load($item->getProductId());
            $sortedItems[$prod->getStockLocation()] = $item;
        }

        ksort($sortedItems);

        foreach ($sortedItems as $item){
            if ($item->getOrderItem()->getParentItem()) {
                continue;
            }
            /* Draw item */
            $this->_drawItem($item, $page, $order);
            $page = end($pdf->pages);
        }

以上是关于Magento - 按位置对PDF发票产品进行排序的主要内容,如果未能解决你的问题,请参考以下文章

Magento列表按属性排序按属性排序而不是值排序

Magmi 覆盖产品在类别中的位置

如何在magento中对库存状态的产品集合进行排序

Magento 类别按属性排序

magento 从类别中获取产品,按 rand() 排序

Magento:在发票上包含可配置的产品 Sku - 目前仅显示相关的简单产品