gpt4 book ai didi

php - Magento 获取属性类型(例如下拉列表或文本)

转载 作者:可可西里 更新时间:2023-11-01 00:02:51 24 4
gpt4 key购买 nike

我想知道如何获取产品属性对象的类型。在 magento 后端,需要在“文本字段”或“下拉列表”等各种选项之间进行选择。

我正在使用产品导入脚本,了解正确设置值的属性类型很重要。

最佳答案

有一个简单的魔术方法可以获取对象的值:

$attribute = Mage::getModel('eav/entity_attribute')->load( $your_attribute_id );
$attribute->getFrontendInput();

结果是一个短字符串,例如“text”或“select”。以下是 Magento 1.7(德语翻译)中所有类型的简短列表:

  • 文本:Einzeiliges Textfeld
  • 文本区域:Mehrzeiliger Textbereich
  • 日期:基准
  • bool 值:Ja/Nein
  • 多选:Mehrfach Auswahl
  • select: selected="selected: 下拉
  • 价格:价格
  • 媒体图片:图片
  • weee:Feste Produktsteuer (FPT)

如果您需要单个属性的所有选项的列表,请执行以下操作:

Mage::getModel( 'eav/config' )->getAttribute( 'catalog_product' , 'code_of_attribute' )

因此您已经加载了属性对象。其他加载对象的方法对我不起作用(例如 Mage::getModel('eav/entity_attribute')->load('xy'); )。

然后使用 getSource() 方法和 getAllOptions 方法接收包含所有选项的数组:

$your_attribute->getSource()->getAllOptions(true, true)

结果是这样的:

array(4) {
[0]=>
array(2) {
["label"]=>
string(0) ""
["value"]=>
string(0) ""
}
[1]=>
array(2) {
["value"]=>
string(1) "5"
["label"]=>
string(6) "red"
}
[2]=>
array(2) {
["value"]=>
string(1) "4"
["label"]=>
string(6) "blue"
}
[3]=>
array(2) {
["value"]=>
string(1) "3"
["label"]=>
string(6) "green"
}
}

关于php - Magento 获取属性类型(例如下拉列表或文本),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17292571/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com