我在我的magento商店有800个产品,我试图更改所有SKU,但保留旧的到另一个文本字段。我发现一个脚本可以一次更改所有SKU,但问题在于首先我必须将属性字段SKU的文本插入新属性字段“old_sku”。magento update属性1 =属性2
我该如何更新old_sku = sku?
感谢您的帮助!
我在我的magento商店有800个产品,我试图更改所有SKU,但保留旧的到另一个文本字段。我发现一个脚本可以一次更改所有SKU,但问题在于首先我必须将属性字段SKU的文本插入新属性字段“old_sku”。magento update属性1 =属性2
我该如何更新old_sku = sku?
感谢您的帮助!
如果你想保持它非常简单那么解决的办法是
一)添加“old_sku” B中的属性)出口的所有产品 二)改变CSV - 复制&粘贴“SKU”列的值在“old_sku”和 d)进口的所有产品
就是这样
希望这有助于!
如果你确实有一些PHP的知识,你可以用它来创建一个运行一次的PHP脚本并替换所有的属性值。例如,我会做到这一点,像这样:
<?php
// Magento initialization code; taken from here: http://www.ecomdev.org/2010/06/01/application-bootstrap-in-magento.html
require 'app/Mage.php';
if (!Mage::isInstalled()) {
echo "Application is not installed yet, please complete install wizard first.";
exit;
}
$initializationCode = 'admin';
$initializationType = 'store';
$scope = 'frontend';
Mage::app($initializationCode, $initializationType);
Mage::getConfig()->init();
Mage::getConfig()->loadEventObservers($scope);
Mage::app()->addEventArea($scope);
// Update products
try
{
$products = Mage::getModel('catalog/product')->getCollection();
foreach ($products as $product) {
$product->setOldSku($product->getSku())->save();
}
} catch (Exception $e)
{
echo "Something bad happened: {$e->getMessage()}. Shutting down...";
exit;
}
?>
只需创建,比方说,你的Magento设置(在index.php
文件附近)的根目录中的update_skus.php
文件,用我提供的代码填充它并将浏览器导航至该文件(例如http://magento.local/update_skus.php
)。您应该将所有产品的old_sku
属性完全设置为它们的sku
属性的值。
我会尝试一下。只是关于代码的一个问题。昨天,我从管理员那里逐一更新了30款产品的sku和oldsku。只有当字段中没有值时,才可以更新oldsku,所以我不会丢失30个产品的数据;谢谢 – GeorgeV
当然!只需在$ product-> setOldSku($ product-> getSku()) - > save();前添加'if(empty($ product-> getOldSku()))'''''''''' – shybovycha
' PHP文件,我得到一个白色的屏幕。此外,我在管理员检查了一些产品和oldsku不更新,只是空的。 – GeorgeV
刚刚标签是否正确?你做这个的目的是什么? – Gowri