Как отображать все сообщения от стандартных сообщений до пользовательских типов сообщений в цикле с разбивкой на страницы?

У меня есть несколько стандартных сообщений и сообщений из настраиваемого типа сообщений. Теперь я хочу показать все их на моей домашней странице, используя цикл. Моя проблема заключается в том, что он отображает сообщения, включая сообщения из настраиваемого типа сообщений, но не все.

Типы сообщений, которые у меня есть прямо сейчас: 7 стандартных сообщений , 15 фотографий , 5 видеороликов , 2 веб-страницы . Всего 29 сообщений .

В моих настройках чтения я установил, чтобы страницы блогов отображали максимум 6 сообщений . Теперь, когда я перехожу на домашнюю страницу, я могу видеть, что эти 6 сообщений смешиваются с разными типами сообщений, но есть только 2 страницы (вторая страница также состоит из 6 сообщений). Значит, есть только менее 13 сообщений, где это актуальность, у меня 29 сообщений. Когда я перехожу на website.com/page/3/, я получаю ошибку 404.

Я использую последнюю структуру FoundationPress для своей темы WordPress, и вот мой код

<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $loop = new WP_Query(array( 'post_type' => array('post', 'photo', 'video', 'web'), 'posts_per_page' => get_option('posts_per_page'), 'paged' => $paged )); ?> <?php while ( $loop -> have_posts() ) : $loop -> the_post(); ?> <?php get_template_part( 'content', get_post_format() ); ?> <?php endwhile; ?> 

Для справки, вот функция FoundationPress, чтобы показать навигацию

 $paginate_links = paginate_links( array( 'base' => str_replace( $big, '%#%', html_entity_decode( get_pagenum_link( $big ) ) ), 'current' => max( 1, get_query_var( 'paged' ) ), 'total' => $wp_query->max_num_pages, 'mid_size' => 5, 'prev_next' => true, 'prev_text' => __( '&laquo;', 'foundationpress' ), 'next_text' => __( '&raquo;', 'foundationpress' ), 'type' => 'list', ) );