2012-10-06 55 views
-2

我目前正在嘗試修改分頁模板(/app/design/frontend/default/mytheme/template/page/html/pager.phtml)以僅顯示分頁鏈接和在分頁和顯示單個頁面上的所有項目之間切換的鏈接。從模板與其他Mage塊類互動

我已經得到了後者想通了:

<div class="show-all-toggle"> 
    <a class="show-all" href="<?php echo $this->getLimitUrl('all') ?>">Show All</a> 
</div> 

而且我知道如何讓所有可用的分頁限制的列表:

$this->getAvailableLimit(); 

但是,我不能得到默認限制在管理後臺中設置。

我真的不清楚模板和塊類之間的關係,但此模板與Mage_Page_Block_Html_Pager相關聯,所以我知道$this具有該類的所有成員變量和函數。

我也知道Mage_Adminhtml_Block_Widget_Grid有一個名爲$_defaultLimit的屬性,它應該是管理面板中設置的默認分頁限制。但是,如何從不同的模板訪問這個類屬性?或者我是以完全錯誤的方式進行討論的?

+0

'$ this-> getLimit();'?爲什麼你不能使用它? – Zyava

+0

@Zyava:不幸的是,只能獲得當前的限制。所以當用戶第一次訪問商店時,'$ this-> getLimit()'確實會得到默認限制。但是一旦用戶點擊了「全部顯示」鏈接,當前限制就被設置爲「全部」,這就是'getLimit()'返回的結果。所以這不適用於這個用例。 –

+1

如果您的尋呼機模塊位於' getParentBlock() - > getDefaultPerPageValue()'。 – Zyava

回答

2

如果您的尋呼機模塊在<block type="catalog/product_list_toolbar" ...之內 - 您可以嘗試$this->getParentBlock()->getDefaultPerPageValue()