2017-11-20 10 views
0

私は製品のURLを取得したいと思います。 以下、カテゴリページのgetLoadedProductCollectionメソッドから表示しています。getLoadedProductCollectionから属性値を取り出して配列に格納します

また、商品の商品名、価格、URL、商品の画像を配列に格納する必要があります。

<?php $products = $this->getLoadedProductCollection();?> 

[url_path] => Array 
(
    [SCHEMA_NAME] => 
    [TABLE_NAME] => catalog_product_flat_1 
    [COLUMN_NAME] => url_path 
    [COLUMN_POSITION] => 39 
    [DATA_TYPE] => varchar 
    [DEFAULT] => 
    [NULLABLE] => 1 
    [LENGTH] => 255 
    [SCALE] => 
    [PRECISION] => 
    [UNSIGNED] => 
    [PRIMARY] => 
    [PRIMARY_POSITION] => 
    [IDENTITY] => 
) 

どのようにデータを取得して配列に格納できますか?

答えて

0

使用addUrlRewrite方法

$products = $this->getLoadedProductCollection()->addUrlRewrite()->load(); 

UPDATEあなたは、私が疑問に掲載されていると私は同じデータを取得しています配列

foreach($products as $product) { 
    $productsArray[$product->getId()] = $product->getData(); 
    $productsArray[$product->getId()]['url'] = $product->getProductUrl(); 
} 
+0

にこれを入れてどのようにいくつかの例。以下は、$ products-> getLoadedProductCollection()を出力するときの構造です。 – gt06

+0

url_pathは必要なものではありません。モデルオブジェクトのメソッドの戻り値を単純に出力することもできません。 $ products-> getProductUrl()を使用して$製品を繰り返し処理すると、magento書き換えエンジンから汎用URLを取得できます。それがあなたが望むものならば –

+0

はい私はそれを実装しました。戻り値は出力できません。しかし、私は名前、URL、イメージ、価格、説明を配列にフェッチしたい。 どうすればgetLoadedProductCollectionからそれを実行できますか? – gt06

関連する問題