Поддержка Проблемы и решения custom post type+pagenavi = 404 !?

  • сделал пользовательский тип записи и таксономии, сделал шаблоны arhive-posttype.php

    кусок кода с правилами из function.php

    // сбрасываем правила
        flush_rewrite_rules();
    
        // меняем URL
        add_action('init', 'my_rewrite');
    }
    
        function my_rewrite() {
            global $wp_rewrite;
                $wp_rewrite->flush_rules();
    
    $gallery_structure = '/rastenia/%postname%';
    $wp_rewrite->add_rewrite_tag("%postname%", '([^/]+)', "%postname%");
    $wp_rewrite->add_permastruct('rastenia', $gallery_structure, false);
    
        }

    в шаблоне arhive-posttype.php вывод такой

    <?php
    $args = array('post_type' => 'rastenia', 'order'=>'ASC', 'posts_per_page'=>'3', 'paged' => $paged);
    query_posts($args); ?>
    
    <?php $col = 1; ?>
    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    <?php if ($col == 1) echo "<div class=\"row\">"; ?>
      <div class="post col<?php echo $col;?>" id="post-<?php the_ID(); ?>">
      <h4><a href="<?php the_permalink() ?>" rel="bookmark" title="Постоянная ссылка <?php the_title(); ?>"><?php the_title(); ?></a></h4>
    
      </div>
    <?php if ($col == 1) echo "</div>"; if($col == 1) {$col = 2;}  else { if($col != 1) { if($col == 3) {$col = 1;} if($col == 2) {$col =  3;} } } ?>
    
    			<?php endwhile; ?>
    				<center><?php if(function_exists('wp_pagenavi')) { wp_pagenavi();}
    				else { ?></center>
    					 <?php include(TEMPLATEPATH . '/includes/navigation.php'); ?>
    				<?php } ?>
    
    			<?php else : ?>
    				<?php include(TEMPLATEPATH . '/includes/no-results.php'); ?>
    			<?php endif; wp_reset_query(); ?>
    
    ...код код код...

    по ссылке сайт.ру/posttype — все работает
    по ссылке сайт.ру/posttype/taxanomy/ — все работает

    по ссылке сайт.ру/posttype/page/2 — ошибка 404

    перечитал много статей, но ничего особо не помогает, помогите разобратся..

Просмотр 7 ответов — с 1 по 7 (всего 7)
  • Если я не ошибаюсь, то это проблема с которой столкнулся и я, решение — заменить 'paged' => $paged на 'paged' => get_query_var('paged').

    Описание своей ситуации я приводил тут blog.verha.net/query_posts-pagination.html.

    Решение не мое, нашел тут sixrevisions.com/wordpress/wordpress-custom-post-types-guide/#comment-78053.

    Автор Денис

    (@redfox21yandexru)

    спасибо за ссылки но всеравно выдает ошибку 404, вот полностью код, может я где ошибку допустил ?

    <?php query_posts(array('post_type' => 'rastenia', 'order'=>'ASC', 'posts_per_page'=>'3', 'paged' => get_query_var('paged') ) ); ?>
    
    <?php $col = 1; ?>
    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    <?php if ($col == 1) echo "<div class=\"row\">"; ?>
      <div class="post col<?php echo $col;?>" id="post-<?php the_ID(); ?>">
      <h4><a href="<?php the_permalink() ?>" rel="bookmark" title="Постоянная ссылка <?php the_title(); ?>"><?php the_title(); ?></a></h4>
    
      </div>
    <?php if ($col == 1) echo "</div>"; if($col == 1) {$col = 2;}  else { if($col != 1) { if($col == 3) {$col = 1;} if($col == 2) {$col =  3;} } } ?>
    
    			<?php endwhile; ?>
    				<center><?php if(function_exists('wp_pagenavi')) { wp_pagenavi();}
    				else { ?></center>
    					 <?php include(TEMPLATEPATH . '/includes/navigation.php'); ?>
    				<?php } ?>
    
    			<?php else : ?>
    				<?php include(TEMPLATEPATH . '/includes/no-results.php'); ?>
    			<?php endif; wp_reset_query(); ?>
    
    			<?php if ( is_active_sidebar( '468_bottom_area' ) ) { ?>
    				<?php if ( !dynamic_sidebar('468_bottom_area') ) : ?>
    				<?php endif; ?>
    			<?php } ?>
    Автор Денис

    (@redfox21yandexru)

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

    Я упростил бы конструкцию до какой-либо 100% рабочей, и уже с ней искал причину. Очевидной ошибки в приведенном Вами куске кода я не увидел.

    Автор Денис

    (@redfox21yandexru)

    чтото я непонимаю, если использую как шаблон в статистической странице все работает, если же без статестической страницы то если 2роая страница то 404 ошибка, код поидеи один и тотже

    Здравствуйте Денис, а нельзя Вам задать несколько вопросов по тому, как создавать статические страницы, и по «posttype.php» ?
    Не могли бы Вы написать почту или еще какой-нибудь контакт? Буду очень благодарен Вам!

    Автор Денис

    (@redfox21yandexru)

    87 ноль 8728 ася

Просмотр 7 ответов — с 1 по 7 (всего 7)
  • Тема «custom post type+pagenavi = 404 !?» закрыта для новых ответов.