我有一个Magento 1.9商店,并且已经编写了一个导出脚本,用于将产品数据导出为CSV文件。在我打开平面目录进行扩展后,我错过了一些属性SKU和Leverancier。
我在导出时打开和关闭平面目录,但有人知道如何使用我的代码解决这个问题吗?
<?php
error_reporting(E_ALL | E_STRICT);
define('MAGENTO_ROOT', getcwd());
$mageFilename = MAGENTO_ROOT . '/app/Mage.php';
require_once $mageFilename;
Mage::setIsDeveloperMode(true);
ini_set('display_errors', 1);
Mage::app();
$products = Mage::getModel("catalog/product")->getCollection();
$products->addAttributeToSelect('name');
$products->addAttributeToSelect('afmetingen');
$products->addAttributeToSelect('leverancier');
$products->addAttributeToSelect('price');
$fp = fopen('exports.csv', 'w');
$csvHeader = array("sku", "name", "afmetingen", "leverancier", "price");
fputcsv( $fp, $csvHeader,";");
foreach ($products as $product){
$sku = $product->getSku();
$name = $product->getName();
$afmetingen = $product->getAfmetingen();
$leverancier = $product->getLeverancier();
$price = $product->getPrice();
fputcsv($fp, array($sku, $name, $afmetingen, $leverancier, $price), ";");
}
fclose($fp);
答案 0 :(得分:0)
平面表中不包含某些属性。 您可以尝试使用以下方式禁用平板产品:
$flatProducts = Mage::helper('catalog/product_flat')->getProcess();
$flatStatus = $process->getStatus();
$flatProducts->setStatus(Mage_Index_Model_Process::STATUS_RUNNING);
然后重新启用持平状态:
$flatProducts->setStatus($flatStatus);