php - Magento 社区 1.7.0.2 - 导出产品 CSV

标签 php magento magento-1.7

Magento 的全新安装,产品已安装等,正要导出产品 CSV,一旦我提交了正常表单,错误“未发送有效数据”我开始进行一些调试以查看发生了什么.第一站是exception.log

Notice: Undefined index:   in /app/code/core/Mage/ImportExport/Model/Export/Entity/Product.php on line 539' in /app/code/core/Mage/Core/functions.php:245

导致问题的函数是:

/**
 * Update data row with information about categories. Return true, if data row was updated
 *
 * @param array $dataRow
 * @param array $rowCategories
 * @param int $productId
 * @return bool
 */
protected function _updateDataWithCategoryColumns(&$dataRow, &$rowCategories, $productId)
{
    if (!isset($rowCategories[$productId])) {
        return false;
    }

    $categoryId = array_shift($rowCategories[$productId]);
    $dataRow[self::COL_ROOT_CATEGORY] = $this->_rootCategories[$categoryId];
    if (isset($this->_categories[$categoryId])) {
        $dataRow[self::COL_CATEGORY] = $this->_categories[$categoryId];
    }

    return true;
}

由于某些原因,$categoryId 没有被设置,因为 $rowCategories 不是一个数组。

为了以防万一,我重新运行了索引管理,但在我看来,类别或其他方面似乎有问题。我知道一个快速解决方法是在继续之前检查 $categoryId 是否已设置,但我想首先知道是什么导致了错误。

最佳答案

在 magento 修复之前,您可以复制
下的文件 本地/Mage/ImportExport/Model/Export/Entity/Product.php

并更改第 534 行:

if (!isset($rowCategories[$productId])) {
    return false;
}

if (!isset($rowCategories[$productId]) or empty($rowCategories[$productId])) {
    return false;
}

关于php - Magento 社区 1.7.0.2 - 导出产品 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11886249/

相关文章:

php - 查询返回 false 而不是资源

php - 在我的核心 PHP 站点或 CodeIgniter 站点上显示 Woocommerce 产品和 Magento 产品

SQL Magento 销售报告

Magento - 如何在查看 phtml 文件中向 friend 表单显示电子邮件

Magento:在结构 block "content"末尾添加内容 block

magento - 对 view.pthml 中的非对象调用成员函数 getItemsCount()

php - 是否可以同时对不同服务器上的两个不同数据库(MSSQL 和 MySQL)执行 PHP 查询?

php - 检查订阅是否已过期

javascript - 如何使用 javascript 发布预览表的信息

php - Magento Redirect from Observer 始终有效