gpt4 book ai didi

magento - 获取magento中所有产品属性的列表

转载 作者:行者123 更新时间:2023-12-04 06:40:59 25 4
gpt4 key购买 nike

我一直在做前端magento,但才刚刚开始构建模块。这是我知道如何做前端的事情,但我在我的模块中苦苦挣扎。我现在要实现的目标是在管理员中使用所有可用的产品属性填充多选。包括所有产品属性集的自定义产品属性。我不完全确定这需要什么表,因为我不想假设启用了平面类别数据。

我在系统配置的新选项卡中创建了我的管理区域,我创建了一个多选字段,该字段当前仅填充了三个静态选项。这很管用。任何人都可以通过指出正确的方向来帮助我......目前这是我到目前为止所拥有的(因为它的值(value))。

   <?php
class test_test_Model_Source
{
public function toOptionArray()
{
return array(
array('value' => 0, 'label' =>'First item'),
array('value' => 1, 'label' => 'Second item'),
array('value' => 2, 'label' =>'third item'),

);
}
}

/////////////////////////////编辑////////////////////////////////////

我觉得我可能在这里找到了一些东西,但它只返回每个属性的第一个字母(所以我不确定它是否甚至是它返回的属性)
public function toOptionArray()
{
$attributes = Mage::getModel('catalog/product')->getAttributes();
$attributeArray = array();
foreach($attributes as $a){

foreach($a->getSource()->getAllOptions(false) as $option){
$attributeArray[$option['value']] = $option['label'];
}

}
return $attributeArray;
}

/////////////////////////////////编辑////////////////////////////////////

我不是非常接近,因为我现在知道该数组正在返回我想要的所有属性代码。但是它仍然只输出每个字母的第一个字母......有人知道为什么吗?
public function toOptionArray()
{
$attributes = Mage::getModel('catalog/product')->getAttributes();
$attributeArray = array();

foreach($attributes as $a){
foreach ($a->getEntityType()->getAttributeCodes() as $attributeName) {
$attributeArray[$attributeName] = $attributeName;
}
break;
}
return $attributeArray;
}

最佳答案

我已经回答了我自己的问题。我找到了一种可行的方法,但我不确定为什么,所以如果有人可以评论和解释那将是有用的。所以虽然有 $attributeArray[$attributeName] = $attributeName;当您返回仅提供第一个字母的数组时,当涉及到 print_r 时起作用。但是,如果您执行以下操作,在我看来,这似乎在做同样的事情。我只能想象,在渲染时,它并不期待一个字符串,而是其他东西。无论如何,这是代码:

public function toOptionArray()
{
$attributes = Mage::getModel('catalog/product')->getAttributes();
$attributeArray = array();

foreach($attributes as $a){

foreach ($a->getEntityType()->getAttributeCodes() as $attributeName) {

//$attributeArray[$attributeName] = $attributeName;
$attributeArray[] = array(
'label' => $attributeName,
'value' => $attributeName
);
}
break;
}
return $attributeArray;
}

关于magento - 获取magento中所有产品属性的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15771499/

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