2016-10-03 56 views
0

我正在嘗試顯示與fishpig中的博客相關的產品數量。獲取Fishpig博客中的相關產品數量

我想下面的方法,但它返回空值。

$post->getAssociatedProducts(); 

功能

public function getAssociatedProducts($post) 
    { 
     if ($post instanceof Fishpig_Wordpress_Model_Post) { 
      $productIds = $this->_getAssociatedWpEntityIds($post->getId(), 'product', 'post', 'post_id'); 

      try { 
       foreach($post->getParentCategories() as $category) { 
        $productIds = array_merge($productIds, $this->_getAssociatedWpEntityIds($category->getId(), 'product', 'category', 'category_id')); 
       } 
      } 
      catch (Exception $e) { 
       $this->log($e->getMessage()); 
      } 
      if (count($productIds) > 0) { 
       $collection = Mage::getResourceModel('catalog/product_collection');  
       Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($collection); 
       $collection->addAttributeToFilter('status', 1); 
       $collection->addAttributeToFilter('entity_id', array('in' => $productIds)); 

       return $collection; 
      } 
     } 

     return false; 
    } 

請問這個產品寄回算?

回答

2

您列出的函數不能返回null。唯一的返回類型是假的或產品集合。

我已經搜索了代碼庫,並且該方法不是任何存在的類的一部分,所以我不確定它是從哪裏得到的。也許它來自舊版本?

要使用最新版本的擴展得到相關產品後,您可以使用下列內容:

// Get the associations helper 
$associationsHelper = Mage::helper('wordpress/associations'); 

// Load a product collection based on $post 
$products = $associationsHelper->getAssociatedProductsByPost($post); 

// Get the number of products 
$productCount = count($products); 
+0

感謝@Ben它的工作! :) –

相關問題