Magento: 根据产品属性加载产品信息 Load A Category or Product by an Attribute

Load a Product by ID

<?php
 
// get product model by product id, assuming you have known product id, $productId
$_product = Mage::getModel('catalog/product')->load($productId)
 

 

Load a Product by SKU

<?php

	$sku = 'my-product-sku';
	$product = Mage::getModel('catalog/product')->load($sku, 'sku');
	
	if ($product->getId()) {
		echo $product->getName();
		echo $product->getProductUrl();
	}
	else {
		echo 'Product not found with SKU of ' . $sku;
	}
 

 

Load a Product by an Attribute

<?php

	// Instantiate a product collection object
	$products = Mage::getResourceModel('catalog/product_collection');
	
	// Select which fields to load into the product
	// * will load all fields but it is possible to pass an array of
	// select fields to load
	$products->addAttributeToSelect('*');
	
	// Ensure the product is visible
	$products->addAttributeToFilter('visibility', array('neq' => 1));
	
	// Ensure the product is enabled
	$products->addAttributeToFilter('status', 1);
	
	// Add Name filter
	$products->addAttributeToFilter('name', 'My Product Name');

	// Limit the collection to 1 result
	$products->setCurPage(1)->setPageSize(1);
	
	// Load the collection
	$products->load();
	
	if ($products->getFirstItem()) {
		$product = $products->getFirstItem();
		
		echo $product->getName();
	}
	else {
		echo 'No product exists with the name ' . $name;
	}
 
<?php
	
	// Print out the SQL query generated by the collection object so far
	echo $products->getSelect() . '<br/><br/>';
 

 

Loading a Category by an Attribute

<?php

	// Instantiate a category collection object
	$categories = Mage::getResourceModel('catalog/category_collection');
	
	// Select which fields to load into the category
	// * will load all fields but it is possible to pass an array of
	// select fields to load
	$categories->addAttributeToSelect('*');
	
	// Ensure the category is active
	$categories->addAttributeToFilter('is_active', 1);
	
	// Add Name filter
	$categories->addAttributeToFilter('name', 'My Category Name');

	// Limit the collection to 1 result
	$categories->setCurPage(1)->setPageSize(1);
	
	// Load the collection
	$categories->load();
	
	if ($categories->getFirstItem()) {
		$category = $categories->getFirstItem();
		
		echo $category->getName();
	}
	else {
		echo 'No category exists with the name ' . $name;
	}

  

原文/转自: Magento: 根据产品属性加载产品信息 Load A Category or Product by an Attribute

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值