Advanced: Set the default number of entries per page for new Views
By default, GravityView sets new Views to display 25 entries per page.
If you want to change this default for all newly created Views, you can use the gravityview_default_page_size
filter.
Example 1: Show All Entries by Default
/**
* Change the default number of entries for new GravityView Views to "all entries".
*
* @param int $default The default number of entries per page (default: 25).
*
* @return int Returns -1 to display all entries without pagination.
*/
add_filter( 'gravityview_default_page_size', function( $default = 25 ) {
return -1; // -1 means "show all entries"
});
Example 2: Show a Different Number of Entries by Default
/**
* Change the default number of entries for new GravityView Views to 50.
*
* @param int $default The default number of entries per page (default: 25).
*
* @return int Returns 50 to display 50 entries per page by default.
*/
add_filter( 'gravityview_default_page_size', function( $default = 25 ) {
return 50;
});
Example 3: Set Different Defaults Based on the User Role
/**
* Set different default entries per page for new Views based on the current user's role.
*
* @param int $default The default number of entries per page (default: 25).
*
* @return int The number of entries to display per page for this user.
*/
add_filter( 'gravityview_default_page_size', function( $default = 25 ) {
if ( current_user_can( 'manage_options' ) ) {
// Admins see all entries.
return -1;
}
if ( current_user_can( 'edit_posts' ) ) {
// Editors see 50 entries.
return 50;
}
// All other users see 25 entries.
return 25;
});
Notes:
- These changes affect only newly created Views — existing Views will retain their saved settings.
-1
= show all entries. Any positive integer will set that number as the page size.- You can add your own conditions to tailor defaults for different contexts.