d-b
  • 0
Новичок

Показывать прилепленные сообщения в архиве категорий

  • 0

Я хотел бы иметь возможность показывать прикрепленные сообщения в верхней части страниц категорий. Я использую archive.php для своей страницы категории.

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

Это работает нормально, пока в категории не останется прикрепленных сообщений для отображения, а затем он дублирует список сообщений.

<?php   
// get the current category
$category = get_the_category();
// get the sticky post in the category, order by title - ascending
query_posts(array( 'post__in' => get_option('sticky_posts'), 'orderby' => 'title', 'post_date' => 'DESC' , 'cat' => ''.$category[0]->cat_ID.'' ));
?>
<?php if (have_posts()) : ?>
<?php
if ($cat)
{echo "<h2>Articles in " . get_the_category_by_ID($cat) . "</h2>";}
?>
    <ul id="archive-list">      
    <?php while (have_posts()) : the_post(); ?>             
        <li class="sticky"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> <span>Updated on <?php the_modified_date(); ?> at <?php the_modified_time() ?></span></li>
    <?php endwhile; ?>
    </ul>   

<?php endif; ?>


<?php   
// get the sticky post in the category, order by title - ascending
query_posts(array( 'post__not_in' => get_option('sticky_posts'), 'orderby' => 'title', 'post_date' => 'DESC' , 'cat' => ''.$category[0]->cat_ID.'' ) );
?>
<?php if (have_posts()) : ?>
    <ul id="archive-list">      
    <?php while (have_posts()) : the_post(); ?>             
        <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> <span>Updated on <?php the_modified_date(); ?> at <?php the_modified_time() ?></span></li>
    <?php endwhile; ?>
    </ul>   

<?php if(function_exists('wp_page_numbers')) { wp_page_numbers(); } ?>

    <?php else : ?>

        <h1 class="center">Sorry, no articles have been published in the <?php if ($cat) {echo "" . get_the_category_by_ID($cat) . "";} ?> category.</h1>
        <?php include (TEMPLATEPATH . '/searchform.php'); ?>

<?php endif; ?>

Любая помощь будет принята с благодарностью! Спасибо.

Share
  1. муравей нумерация страниц? как здесь интегрировать paginate_links()?

    • 0
  2. попробуйте использовать условный оператор для переноса первого цикла, например:

    if( get_option('sticky_posts') ) : //only do the next part if sticky posts
    

    добавить соответствующий endif; после endif; первого цикла.

    • 0
  3. Использовать wp_reset_query() после query_posts() . У нас много постов на эту тему. 😉

    • 0

Оставить ответ

You must login to add an answer.