本文整理汇总了PHP中Mage_Eav_Model_Entity_Attribute::getFilterOptions方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Eav_Model_Entity_Attribute::getFilterOptions方法的具体用法?PHP Mage_Eav_Model_Entity_Attribute::getFilterOptions怎么用?PHP Mage_Eav_Model_Entity_Attribute::getFilterOptions使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Eav_Model_Entity_Attribute
的用法示例。
在下文中一共展示了Mage_Eav_Model_Entity_Attribute::getFilterOptions方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _getSelectHtmlWithValue
/**
* Select field filter HTML with selected value.
*
* @param Mage_Eav_Model_Entity_Attribute $attribute
* @param mixed $value
* @return string
*/
protected function _getSelectHtmlWithValue(Mage_Eav_Model_Entity_Attribute $attribute, $value)
{
if ($attribute->getFilterOptions()) {
$options = array();
foreach ($attribute->getFilterOptions() as $value => $label) {
$options[] = array('value' => $value, 'label' => $label);
}
} else {
$options = $attribute->getSource()->getAllOptions(false);
}
if ($size = count($options)) {
// add empty vaue option
$firstOption = reset($options);
if ('' === $firstOption['value']) {
$options[key($options)]['label'] = '';
} else {
array_unshift($options, array('value' => '', 'label' => ''));
}
$selectBlock = new Mage_Core_Block_Html_Select(array('name' => $this->getFilterElementName($attribute->getAttributeCode()), 'id' => $this->getFilterElementId($attribute->getAttributeCode()), 'class' => 'select', 'extra_params' => 'style="width:280px"'));
return $selectBlock->setOptions($options)->setValue($value)->getHtml();
} else {
return $this->_helper->__('Attribute does not has options, so filtering is impossible');
}
}
示例2: getAttributeFilterType
/**
* Determine filter type for specified attribute.
*
* @static
* @param Mage_Eav_Model_Entity_Attribute $attribute
* @throws Exception
* @return string
*/
public static function getAttributeFilterType(Mage_Eav_Model_Entity_Attribute $attribute)
{
if ($attribute->usesSource() || $attribute->getFilterOptions()) {
return self::FILTER_TYPE_SELECT;
} elseif ('datetime' == $attribute->getBackendType()) {
return self::FILTER_TYPE_DATE;
} elseif ('decimal' == $attribute->getBackendType() || 'int' == $attribute->getBackendType()) {
return self::FILTER_TYPE_NUMBER;
} elseif ($attribute->isStatic() || 'varchar' == $attribute->getBackendType() || 'text' == $attribute->getBackendType()) {
return self::FILTER_TYPE_INPUT;
} else {
Mage::throwException(Mage::helper('importexport')->__('Can not determine attribute filter type'));
}
}
示例3: _getSelectHtmlWithValue
/**
* Select field filter HTML with selected value.
*
* @param Mage_Eav_Model_Entity_Attribute $attribute
* @param mixed $value
* @return string
*/
protected function _getSelectHtmlWithValue(Mage_Eav_Model_Entity_Attribute $attribute, $value)
{
if ($attribute->getFilterOptions()) {
$options = array();
foreach ($attribute->getFilterOptions() as $value => $label) {
$options[] = array('value' => $value, 'label' => $label);
}
} else {
$options = $attribute->getSource()->getAllOptions(false);
}
if ($size = count($options)) {
// add empty vaue option
$firstOption = reset($options);
if ('' === $firstOption['value']) {
$options[key($options)]['label'] = '';
} else {
array_unshift($options, array('value' => '', 'label' => ''));
}
$arguments = array('name' => $this->getFilterElementName($attribute->getAttributeCode()), 'id' => $this->getFilterElementId($attribute->getAttributeCode()), 'class' => 'select select-export-filter');
/** @var $selectBlock Mage_Core_Block_Html_Select */
$selectBlock = $this->_layout->getBlockFactory()->createBlock('Mage_Core_Block_Html_Select', $arguments);
return $selectBlock->setOptions($options)->setValue($value)->getHtml();
} else {
return Mage::helper('Mage_ImportExport_Helper_Data')->__('Attribute does not has options, so filtering is impossible');
}
}