4

ホームページで特定のカテゴリの商品数を 4 つに制限しようとしています。

私がこれをやろうとしているコードは次のとおりです。

{{block type="catalog/product_list" column_count="4" category_id="13" template="catalog/product/list.phtml"}}

ここに私が試したことのいくつかがあります:

num_products="4"
limit = 4, limit="4"
count = 4, count="4"
_productCollection="4"
_productsCount="4"

そこに変更する方法があるかもしれないと考えて list.phtml のコピーを作成しましたが、方法を見つけることができませんでした。

最上部の pf list.phtml には、次のコードがあります。

<?php
    $_productCollection=$this->getLoadedProductCollection();
    $_helper = $this->helper('catalog/output');
?>

そしてグリッドビューの下にこれがあります:

<?php $_collectionSize = $_productCollection->count() ?>
    <?php $_columnCount = $this->getColumnCount(); ?>
    <?php $i=0; foreach ($_productCollection as $_product): ?>
        <?php if ($i++%$_columnCount==0): ?>

ブロックまたはテンプレート ファイル内の製品を制限するためのアイデアはありますか?

4

5 に答える 5

5

より速いのcolumn_count=4is_homepage=1

そしてphtmlにこれを追加します:

 <?php if($this->getIsHomepage() && $i==4) break; ?>

この前に :

 <?php if ($i++%$_columnCount==0): ?>

次に、ホームページに1行しかないため(私が推測するように4行の場合)、合計4つの製品になります

于 2013-03-07T20:33:53.470 に答える
3

試す

 {{block type="catalog/product_list" limit="4" category_id="13" template="catalog/product/list.phtml"}}

見る

于 2013-03-07T20:34:03.153 に答える
2

INマジェントver. 1.9.0.1 list.phtml にこれらの行を追加するだけの簡単な解決策を見つけました。2 回来る foreach ループを見つけるだけなので、両方の場所に追加する必要があります。

<?php $i=0; ?>
<?php foreach ($_productCollection as $_product): 
if($i == 6) break;
$i++;
?>

必要に応じて変更できる6レコードに入れました。

ありがとう

于 2014-07-16T13:10:21.317 に答える
1

この問題に直面していたとき、私は多くのサイトを検索しましたが、それを理解できるサイトはほとんどありません..特定のカテゴリからの固定数の製品を表示するために、これらの手順を実行して自分で編集しました:- go to

1) app\design\frontend\default\<your theme>\template\catalog\product
   copy list.phtml and save as list_new.phtml

list_new.phtml を開き、if ループの終了後に '' を検索して、このコードを挿入します。

<?php if($i<=4): // for 4 product?>

リストが終了したら閉じます。

<?php endif // for 4 product?>

コードは次のようになります-

<?php if ($i++%$_columnCount==0): ?>
    <ul class="products-grid">
<?php endif ?>
<?php if($i<=4): // for 4 product?>
    <li class="item<?php if(($i-1)%$_columnCount==0): ?>"> 
        // some code here
     </li>
<?php endif // for 4 product?>

2) [CMS] > [ページ] > [ホームページ] > [コンテンツ] を選択し、このコードをコピーします (ここでカテゴリ ID を変更します)。

{{block type="catalog/product_list" name="product_list" category_id="<category id>" column_count="4"mode="grid" template="catalog/product/list_new.phtml"}}
于 2013-11-06T05:38:09.463 に答える
1

これを試して: $_productCollection=$this->getLoadedProductCollection(); $_productCollection->getSelect()->limit(5);

于 2014-03-04T05:08:11.990 に答える