本文整理匯總了PHP中Mage_Catalog_Model_Category::getID方法的典型用法代碼示例。如果您正苦於以下問題:PHP Mage_Catalog_Model_Category::getID方法的具體用法?PHP Mage_Catalog_Model_Category::getID怎麽用?PHP Mage_Catalog_Model_Category::getID使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Mage_Catalog_Model_Category
的用法示例。
在下文中一共展示了Mage_Catalog_Model_Category::getID方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: getChildCategories
/**
* Recursively returns a value / label array of all active categories
* @param Mage_Catalog_Model_Category $category
* @param String $parentname
* @return array
*/
private function getChildCategories($category, $parentname = '')
{
//category not active - skip it
if (!$category->getIsActive()) {
return '';
}
//array containing all the categories to return
$ret = array();
/* Add the current category to return array
* Root categories shouldn't be selected
*/
if ($category->getLevel() > 1) {
$ret[$category->getID()] = $category->getName() . $parentname;
}
// get all children
if (Mage::helper('catalog/category_flat')->isEnabled()) {
$children = (array) $category->getChildrenNodes();
$childrenCount = count($children);
} else {
$children = $category->getChildrenCategories();
$childrenCount = $children->count();
}
$hasChildren = $children && $childrenCount;
// select active children
$activeChildren = array();
foreach ($children as $child) {
if ($child->getIsActive()) {
$activeChildren[] = $child;
}
}
$activeChildrenCount = count($activeChildren);
$hasActiveChildren = $activeChildrenCount > 0;
/**
* Use recursion to include all children categories too
*/
foreach ($activeChildren as $child) {
$childarray = $this->getChildCategories($child, " / " . $category->getName() . $parentname);
foreach ($childarray as $k => $v) {
$ret[$k] = $v;
}
}
return $ret;
}
示例2: getChildCategories
/**
* Recursively returns a value / label array of all active categories
*
* @param Mage_Catalog_Model_Category $category
* @param String $parentname
* @return array
*/
private function getChildCategories($category, $parentname = '')
{
//category not active - skip it
if (!$category->getIsActive()) {
return '';
}
//array containing all the categories to return
$ret = array();
/* Add the current category to return array
* Root categories shouldn't be selected
*/
if ($category->getLevel() > 1) {
$ret[$category->getID()] = ltrim($parentname . " / " . $category->getName(), " / ");
}
// get all children
$children = $category->getChildrenCategories();
$childrenCount = $children->count();
$hasChildren = $children && $childrenCount;
// select active children
$activeChildren = array();
foreach ($children as $child) {
if ($child->getIsActive()) {
$activeChildren[] = $child;
}
}
$activeChildrenCount = count($activeChildren);
$hasActiveChildren = $activeChildrenCount > 0;
/**
* Use recursion to include all children categories too
*/
foreach ($activeChildren as $child) {
$childarray = $this->getChildCategories($child, $parentname . " / " . $category->getName());
foreach ($childarray as $k => $v) {
$ret[$k] = ltrim($v, " / ");
}
}
return $ret;
}