Поддержка Проблемы и решения Пагинация для дефолтной галереи WordPress

  • Та часть кода, которая занимается пагинацией в functions.php:

    // Pagination Setup
    $current = (get_query_var('paged')) ? get_query_var( 'paged' ) : 1;
    $per_page = 3;
    $offset = ($current-1) * $per_page;
    $big = 999999999;
    $total = sizeof($attachments);
    $total_pages = round($total/$per_page);
    if( $total_pages < ( $total/$per_page ) ){
    	$total_pages = $total_pages+1;
    }
    // Pagination output
    $output .= paginate_links( array(
    	'base' => str_replace($big,'%#%',esc_url(get_pagenum_link($big))),
    	'format' => '?paged=%#%',
    	'current' => $current,
    	'total' => $total_pages,
    	'prev_text'    => __('&laquo;'),
    	'next_text'    => __('&raquo;')
    ) );

    Вопрос:

    Код делит изображения на группы по три, создает для этих групп страницы, создает цифры пагинации и создает ссылки на соответствующие страницы. Но если кликнуть на любую ссылку пагинации, никакого перехода никуда не происходит.

    Хотя если у страницы ( https://www.motorizm.net/bugatti-type-41-royale/ ) «Status: Draft», то ссылки пагинации вполне себе работают.

    В чем может быть проблема?

    • Тема изменена 10 месяцев, 4 недели назад пользователем bonmot.

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 1 ответа (всего 1)
  • Сработало вот такое:

    // Pagination output
    $output .= paginate_links( array(
    	'base' => get_permalink( $post->post_parent ) . '%_%',
    	'format' => 'paged=%#%',
    	'current' => $current,
    	'total' => $total_pages,
    	'prev_text'    => __('&laquo;'),
    	'next_text'    => __('&raquo;')
    ) );

    И добавил фильтр:

    add_filter('init', 'post_gallery_add_rewrite_tag_rule_2022');
    function post_gallery_add_rewrite_tag_rule_2022() {
        add_rewrite_tag('%current%','([^&]+)');
        add_rewrite_rule('([^/]+)/paged=/?([0-9]{1,})/?$', 'index.php?name=$matches[1]&paged=$matches[2]', 'top');
    }

    После того как загрузил обновленный functions.php на сервер, в панели управление WordPress:

    Settings -> Permalinks -> [ Save Changes ]

    Решение так же запостил сюда:

    https://wordpress.org/support/topic/pagination-for-wordpress-default-gallery/

    https://wordpress.stackexchange.com/questions/401034/pagination-with-wordpress-default-gallery/402685

    • Ответ изменён 9 месяцев, 2 недели назад пользователем bonmot.
Просмотр 1 ответа (всего 1)
  • Тема «Пагинация для дефолтной галереи WordPress» закрыта для новых ответов.