将产品属性值分配给magento中的另一个产品属性

Moh3n

我有一个Weight属性:

Attribute Code: weight
Scope: general
Catalog Input Type for Store Owner: Text Field
Values Required: yes
Apply To: Simple Product, Bundle Product
Allow HTML Tags on Frontend: yes

而且我有一个General Weight属性:

Attribute Code: general_weight
Scope: general
Catalog Input Type for Store Owner: Text Field
Values Required: no
Apply To: All Product Types
Use in Advanced Search: yes
Comparable on Front-end: yse
Allow HTML Tags on Frontend: yes
Visible on Product View Page on Front-end: yes

我想将Weight属性分配General Weight没有四位小数。我的意思是我希望Weightattribute的值(例如2000.0000)复制到General Weight产品保存时的值中(但没有像2000这样的最后一位小数)。

我以这种方式做了一个小扩展:

用以下内容创建了Moh3n_Attvaluecopier.xml文件app/etc/modules

<?xml version="1.0"?>
<config>
    <modules>
        <Moh3n_Attvaluecopier>
            <active>true</active>
            <codePool>local</codePool>
        </Moh3n_Attvaluecopier>
    </modules>
</config>

config.xml提交app/code/local/Moh3n/Attvaluecopier/etc以下内容:

<?xml version="1.0"?>
<config>
    <modules>
        <Moh3n_Attvaluecopier>
            <version>0.0.1</version>
        </Moh3n_Attvaluecopier>
    </modules>
    <global>
        <models>
            <moh3nattvaluecopier>
                <class>Attvaluecopier_Model</class>
            </moh3nattvaluecopier>
        </models>
        <events>
            <catalog_product_save_after>
                <observers>
                    <moh3n_attvaluecopier_model_observer>
                        <type>singleton</type>
                        <class>Moh3n_Attvaluecopier_Model_Observer</class>
                        <method>copyAttribute</method>
                    </moh3n_attvaluecopier_model_observer>
                </observers>
            </catalog_product_save_after>
        </events>
    </global>
</config>

Observer.php提交app/code/local/Moh3n/Attvaluecopier/model以下内容:

<?php

class Moh3n_Attvaluecopier_Model_Observer
{

private $_processFlag; //to prevent infinite loop of event-catch situation
public function  copyAttribute($observer){

    if(!$this->_processFlag):

    $this->_processFlag=true;
    $_store = $observer->getStoreId();
    $_product = $observer->getProduct();
    $_productid = $_product->getId();

    $attrA = $_product->getAttributeText('weight'); //get attribute A's value

    $action = Mage::getModel('catalog/resource_product_action');
    $action->updateAttributes(array($_productid), array('general_weight'=>$attrWeight),$_store); //assign attrA's value to attrB
    $_product->save();
    endif;}
}

weight用一些数字填充属性,2000.0000General Weight保存产品后什么都不会改变我的意思是值2000不会复制到General Weight属性,General Weight也不会显示任何东西。

米希尔·本德(Mihir Bhende)

这是您更新的观察者函数:

<?php

public function  copyAttribute($observer){

    if(!$this->_processFlag):

    $this->_processFlag=true;
    $_product = $observer->getProduct();
    $_productid = $_product->getId();
    $productModel = Mage::getModel('catalog/product');
    $loadCurrentProduct = $productModel->load($_productid);
    $loadCurrentProduct->setGeneralWeight(intval($loadCurrentProduct->getWeight()));
    $loadCurrentProduct->save();
    endif;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

商店 - 将产品分配给另一个产品

来自分类Dev

在Magento中将两个相同属性分配给一个产品

来自分类Dev

HTML - 如何将文本值分配给另一个属性的值?

来自分类Dev

当另一个数组中存在该属性的名称时,将布尔值分配给该属性

来自分类Dev

Magento-将多个产品ID分配给一个类别

来自分类Dev

将属性分配给另一个Dto

来自分类Dev

将元素属性分配给另一个元素的innerhtml。Javascript / HTML

来自分类Dev

如何将特定属性从一个对象分配给另一个

来自分类Dev

将列表分配给另一个类中现有列表的值

来自分类Dev

如何访问分配给另一个对象的属性的数组内的对象的属性?

来自分类Dev

将一个数组中的值分配给另一个数组中的值

来自分类Dev

Python将值从一个变量分配给另一个

来自分类Dev

在for循环Python中的if语句中,将一个键的值分配给另一个键

来自分类Dev

如何将绑定的对象函数分配给另一个对象属性?

来自分类Dev

根据另一个列值将增量种子分配给字段

来自分类Dev

将String变量的值分配给另一个String变量

来自分类Dev

如何将公式的值(包含变量)分配给另一个变量

来自分类Dev

将列表值分配给另一个列表

来自分类Dev

将Excel范围值分配给另一个范围

来自分类Dev

将值分配给另一个类的列表

来自分类Dev

使用numpy数组将值分配给另一个数组

来自分类Dev

无法将文本框值分配给jQuery中的另一个文本框

来自分类Dev

如何将Angular @Input值分配给另一个变量并填充到子代中?

来自分类Dev

如何将值onClick从不同组件分配给React中的另一个组件

来自分类Dev

如何将文本框值分配给 wpf 中的另一个类

来自分类Dev

TypeScript-将一个对象的所有属性分配给另一个的快捷方式

来自分类Dev

在 MATLAB 中将数组中的值分配给另一个数组

来自分类Dev

将数组引用分配给Java中的另一个数组

来自分类Dev

将数组子集分配给Matlab中另一个数组的成员

Related 相关文章

  1. 1

    商店 - 将产品分配给另一个产品

  2. 2

    在Magento中将两个相同属性分配给一个产品

  3. 3

    HTML - 如何将文本值分配给另一个属性的值?

  4. 4

    当另一个数组中存在该属性的名称时,将布尔值分配给该属性

  5. 5

    Magento-将多个产品ID分配给一个类别

  6. 6

    将属性分配给另一个Dto

  7. 7

    将元素属性分配给另一个元素的innerhtml。Javascript / HTML

  8. 8

    如何将特定属性从一个对象分配给另一个

  9. 9

    将列表分配给另一个类中现有列表的值

  10. 10

    如何访问分配给另一个对象的属性的数组内的对象的属性?

  11. 11

    将一个数组中的值分配给另一个数组中的值

  12. 12

    Python将值从一个变量分配给另一个

  13. 13

    在for循环Python中的if语句中,将一个键的值分配给另一个键

  14. 14

    如何将绑定的对象函数分配给另一个对象属性?

  15. 15

    根据另一个列值将增量种子分配给字段

  16. 16

    将String变量的值分配给另一个String变量

  17. 17

    如何将公式的值(包含变量)分配给另一个变量

  18. 18

    将列表值分配给另一个列表

  19. 19

    将Excel范围值分配给另一个范围

  20. 20

    将值分配给另一个类的列表

  21. 21

    使用numpy数组将值分配给另一个数组

  22. 22

    无法将文本框值分配给jQuery中的另一个文本框

  23. 23

    如何将Angular @Input值分配给另一个变量并填充到子代中?

  24. 24

    如何将值onClick从不同组件分配给React中的另一个组件

  25. 25

    如何将文本框值分配给 wpf 中的另一个类

  26. 26

    TypeScript-将一个对象的所有属性分配给另一个的快捷方式

  27. 27

    在 MATLAB 中将数组中的值分配给另一个数组

  28. 28

    将数组引用分配给Java中的另一个数组

  29. 29

    将数组子集分配给Matlab中另一个数组的成员

热门标签

归档