add_action( 'pre_get_posts', 'be_change_event_posts_per_page' );
/**
* Change Posts Per Page for Event Archive.
*
* @author Bill Erickson
* @link http://www.billerickson.net/customize-the-wordpress-query/
* @param object $query data.
*
*/
function be_change_event_posts_per_page( $query ) {
if ( $query->is_main_query() && ! is_admin() && is_post_type_archive( 'event' ) ) {
$query->set( 'posts_per_page', '18' );
}
}