• На главной странице выводятся 5 записей.
    Внизу — постраничная навигация.
    Всё хорошо работает.

    Страницы у меня всего две.
    Адрес второй страницы такой: http://localhost/localblog/page/2/

    Я попробовал зайти по адресу http://localhost/localblog/page/3/
    и в ответ получил: ничего не найдено.
    Казалось бы всё хорошо. Но плюс к тому, что у меня «ничего не найдено» у меня ещё и сама навигация выводится.

    Проверьте у себя. Может у вас та же проблема.

    Мне нужно или убрать эту навигацию или сделать переадресацию на 404.

    С удовольствием жду вашей помощи)

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Если в теме нет отдельного шаблона для ошибки 404, можно скопировать файл index.php под именем 404.php и убрать оттуда навигацию.

    У меня есть 404, и если ввести адрес несуществующей страницы, то человек будет на неё перенаправлен.

    Только в случае с pagenavi вс страницы типа:
    http://localhost/localblog/page/x/
    где x — любое число,
    как бы, существуют — home.php:

    <?php
    /**
     * @package WordPress
     * @subpackage Motion
     */
    get_header(); ?>
    
    <div id="main">
    <div id="content">
    
    <?php if (have_posts()) : ?>
    <?php while (have_posts()) : the_post(); ?>
    
    <?php if (function_exists('wp_list_comments')): ?>
    <div <?php post_class(); ?> id="post-<?php the_ID(); ?>">
    <?php else : ?>
    <div class="post" id="post-<?php the_ID(); ?>">
    <?php endif; ?>
    
    <div class="posttop">
    <h2 class="posttitle"><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>
    <div class="postmetatop">
    <div class="categs">Категория: <?php the_category(', ') ?></div>
    <div class="cleared"></div>
    </div><!-- /postmetatop -->
    </div><!-- /posttop -->
    
    <div class="postmetabottom">
    <div class="date"><div class="zadate"><?php the_time('d/m/Y') ?></div></div>
    <div class="readmore"><span><a href="<?php the_permalink() ?>">информация о товаре</a></span></div>
    <div class="cleared"></div>
    </div><!-- /postmetabottom -->
    </div><!-- /post -->
    
    <?php endwhile; ?>
    <?php else : ?>
    <div class="post">
    <div class="posttop">
    <h2 class="posttitle"><a href="#">Не найдено</a></h2>
    </div><!-- /posttop -->
    <div class="postcontent">
    <p>К сожалению, по Вашему запросу ничего не найдено.</p>
    </div><!-- /postcontent -->
    </div><!-- /post -->
    <?php endif; ?>
    
    <div id="navigation">
    <?php if(function_exists('wp_pagenavi')) { ?>
    <?php wp_pagenavi(); ?>
    <?php }
    else { ?>
    <div class="alignleft"><?php next_posts_link('« Предыдущие записи') ?></div>
    <div class="alignright"><?php previous_posts_link('Следующие записи »') ?></div>
    <?php } ?><!-- end of pagenavi conditional statement -->
    <div class="cleared"></div>
    </div><!-- /navigation -->
    
    </div><!-- /content -->
    
    <?php get_sidebar(); ?>
    
    </div><!-- /main -->
    <?php get_footer(); ?>

    Вот из этого кода и выдаётся: (К сожалению, по Вашему запросу ничего не найдено.)+(Постраничная навигация)

    Я смог очень банально убрать 🙂 :

    ...
    <?php else : $bez=1; ?>
    ...
    <?php if(function_exists('wp_pagenavi') AND $bez != 1) { wp_pagenavi(); } ?>
    ...

    Но теперь, мне вообще захотелось убрать эту страницу.
    Как мне сделать редирект на 404.php?
    (Я кстати, решил на 404-ой сделать переадресацию на Главную. Хрен знает почему, но меня ппц раздражает 404-ая страница)

    Задам вопрос более конкретно:
    Что надо вписать вместо $bez=1;, чтоб пользователь перекидывался на 404.php ???
    *JS — не хочу использовать.
    *функция header() естественно работать не будет.

    Прям таки не знаю чё делать…

    Задайте этот вопрос отдельно.

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Тема «wp-pagenavi» закрыта для новых ответов.