Front Controller为您要查看的页面分配产品和smarty 变量中的产品数量。这是 BestSalesController 中 BestSales 页面的示例:
$nbProducts = (int)ProductSale::getNbSales();
$bestSales = ProductSale::getBestSales($this->context->language->id, $this->p - 1, $this->n, $this->orderBy, $this->orderWay);
....
// then assign it to smarty
$this->context->smarty->assign(array(
'nbProducts' => $nbProducts,
'products' => $bestSales
));
您可以在 Front Controller 中执行任何特殊或自定义的操作。
如果您想进行自定义分页,请查看blocklayered模块。
例如,在modules/blocklayered/blocklayered.php函数ajaxCall()
中,您可以通过编辑以下行来指定“按页显示的产品数量”的自定义选项:
$nArray = (int)Configuration::get('PS_PRODUCTS_PER_PAGE') != 10 ? array((int)Configuration::get('PS_PRODUCTS_PER_PAGE'), 10, 20, 50) : array(10, 20, 50);
此行显示后台/首选项/产品中指定的每页 10、20、50 和默认产品数量,但您可以根据需要更改它,例如:
$nArray = array(10, 20, 30, 40, 50, 60);
如果要进行自定义,则必须在此模块中进行自定义,但这并不简单(文件达到 4200 行,祝你好运!)。