我们无法从运行Magento 1.6.2的网上商店中导出产品
在我们尝试导出7600产品时,我们收到了臭名昭着的内部服务器错误。
System.log和Exception.log没有显示任何内容。
我尝试使用Magento清理工具来重置文件权限。
我们已经更改了执行时间,但这没有用。
我使用了magento check实用程序(检查服务器上所需的组件)
这说明Magento需要MySQL 4.1.20(或更高版本)。
我认为不是内部服务器错误的问题。
我唯一需要的是产品的CSV导出。
出口需要布局Magento的出口功能如何做
像:
sku,_store,_attribute_set,_type,_category等
因此,如果任何人有任何脚本也可以完成此任务,或有任何建议,我希望收到你的来信!
修改
我使用过滤器创建的导出产品。然而,对于其他人来说,这可能不是一个解决方案。所以答案仍然很受欢迎!
答案 0 :(得分:1)
如果您无法直接从“管理”导出所有产品,则可以使用此代码段通过shell导出它们。
<? php
require_once(_PATH_TO_ . 'Mage.php');
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
$file = 'my_file_name.csv';
$csv = new Varien_File_Csv();
$csvdata = array();
$products = Mage::getModel('catalog/product')->getCollection();
foreach ($products as $product)
{
$product_data = array();
$product_data['id'] = $product->getId();
$product_data['sku'] = $product->getSku();
[... enter here all data you want to export]
$csvdata[] = $product_data;
}
$csv->saveData($file, $csvdata);
在shell中运行:
php -f PATH_TO_YOUR_SCRIPT/scriptname.php
然后,您只需要获取该文件。
此代码段可与其他型号一起使用。
如果要指定另一个分隔符,机箱或行长度,请使用:
$csv->setLineLength(1000);
$csv->setDelimiter(';');
$csv->setEnclosure('"');