我为我的Magento 1.7使用简短描述生成器插件,它有点错误。以下代码来自“ProductController.php”:
Request()方法 - > getParam( '产品');
foreach ($pIds as $pId) {
$obj = Mage::getModel('catalog/product');
$_product=$obj->load($pId);
$attribs=$_product->getAttributes();
$i=0;
foreach ($attribs as $attrib) {
if ($attrib->getUsedInProductListing() && $attrib->getIsUserDefined()) {
$prodAttrVal=$attrib->getStoreLabel().': ';
$pa=$attrib->getFrontend()->getValue($_product);
//$pa=$_product->getAttributeText($attrib->getAttributeCode());
if ($pa==null) $pa='не указано';
$prodAttrVal.=$pa;
if ($i % 2==0) $str.=' '.$prodAttrVal.' | ';
else $str.=' '.$prodAttrVal.'.';
$i++;
}
}
if ($i % 2!=0) $str.=' ';
$str.=' ';
$_product->setDescription($str);
$obj->save();
}
Mage::dispatchEvent('catalog_product_massupdate_after', array('products'=>$pIds));
$this->_redirect('adminhtml/catalog_product/index/', array());
}
}
当我在目录中选择N个产品并选择“Generate Short Description”时,脚本会通过以下模式生成简短描述:“Attr1:blah.Attr2:blah.Attr3:blah.Attr1:blah.Attr2:blah.Attr3:blah “。 - 在某些产品中重复N次,但在其他产品中,它只做一次描述,因为它必须是正确的。产品名称或SKU的相似性并不依赖。
有什么不对?
答案 0 :(得分:0)
我认为这一行存在问题
$obj = Mage::getModel('catalog/product'); //this line
foreach ($pIds as $pId) {
$_product=$obj->load($pId);
$attribs=$_product->getAttributes();
$i=0;
foreach ($attribs as $attrib) {
if ($attrib->getUsedInProductListing() && $attrib->getIsUserDefined()) {
$prodAttrVal=$attrib->getStoreLabel().': ';
$pa=$attrib->getFrontend()->getValue($_product);
//$pa=$_product->getAttributeText($attrib->getAttributeCode());
if ($pa==null) $pa='не указано';
$prodAttrVal.=$pa;
if ($i % 2==0) $str.=' '.$prodAttrVal.' | ';
else $str.=' '.$prodAttrVal.'.';
$i++;
}
}
if ($i % 2!=0) $str.=' ';
$str.=' ';
$_product->setDescription($str);
$_product->save();
}
Mage::dispatchEvent('catalog_product_massupdate_after', array('products'=>$pIds));
$this->_redirect('adminhtml/catalog_product/index/', array());
}
如果您有查询,请告诉我