Home > widget-integration > FilterController > initPageLimit

FilterController.initPageLimit() method

Initializes pagination limit settings from local storage or admin defaults. Handles the products-per-page limit for the filter and manages persistence.

This method: - Retrieves saved limit from local storage or uses admin default - Sets the limit in filter context for API calls - Saves both admin default and current limit for comparison - Initializes pagination session with current page

Signature:

initPageLimit(): void;

Returns:

void

Remarks

The method prioritizes saved user preferences over admin defaults, allowing users to maintain their preferred products-per-page setting across sessions. The admin default is stored separately for comparison and reset capabilities.

Example

Override to apply shop-specific limit logic:

window.boostWidgetIntegration.extend('FilterController', (FilterController) => {
  return class CustomFilterController extends FilterController {
    initPageLimit() {
      super.initPageLimit();

      // Apply VIP customer higher limits
      if (this.isVipCustomer()) {
        const defaultParams = this.filterStore.state.value.defaultParams;
        defaultParams.limit = 50; // VIP customers see more products
        this.filterHelper.setLocalStorage('LIMIT', '50');
      }
    }
  };
});