我此刻向所有销售电子邮件添加了pdf,但如果订单包含至少一个虚拟产品,我只想要添加这些PDF。 如何在以下IF语句中介绍这一点?

    if (Mage::getStoreConfig('sales_email/' . $configPath . '/attachpdf', $storeId)) {

        //Create Pdf and attach to email - play nicely with PdfCustomiser

        $pdf = Mage::getModel('emailattachments/order_pdf_order')->getPdf(array($order));
        Mage::helper('emailattachments')->addAttachment(
            $pdf, $mailTemplate, $this->getOrderAttachmentName($order)
        );
    }
.

有帮助吗?

解决方案

    $isVirtual = false;
    foreach ($order->getAllItems() as $items) {            
        if ($items->getProductType() == 'virtual') {
            $isVirtual = true; 
            break;
        }
    }

    if (Mage::getStoreConfig('sales_email/' . $configPath . '/attachpdf', $storeId) && $isVirtual) {

        //Create Pdf and attach to email - play nicely with PdfCustomiser

        $pdf = Mage::getModel('emailattachments/order_pdf_order')->getPdf(array($order));
        Mage::helper('emailattachments')->addAttachment(
            $pdf, $mailTemplate, $this->getOrderAttachmentName($order)
        );
    }
.
许可以下: CC-BY-SA归因
scroll top