繁体   English   中英

显示来自Wordpress中特定标签的最新文章

[英]Display latest posts from a specific tag in Wordpress

我正在尝试更改我的Wordpress主题,以显示特定标签的最新帖子。 目前它列出了最新的帖子。

这是它使用的部分代码:

<?php
    if ( is_home() ) {
        $args=array(
            'showposts'=> (int) get_option('aggregate_homepage_posts'),
            'paged'=>$paged,
            'category__not_in' => (array) get_option('aggregate_exlcats_recent')
        );
        if (get_option('aggregate_duplicate') == 'false') {
            global $ids;
            $args['post__not_in'] = $ids;
        }
        query_posts($args);
        global $paged;
    }
    $i = 0;
?>
<?php 
    if (have_posts()) : while (have_posts()) : the_post(); ?>
    <?php
        $i++;
        $et_is_latest_post = ( $paged == 0 && ( is_home() && $i <= 2 ) ) || !is_home();
    ?>
        <div class="post entry clearfix<?php if ( $et_is_latest_post ) echo ' latest'; ?>">
            <?php
                $thumb = '';
                $width = $et_is_latest_post ? 170 : 67;
                $height = $et_is_latest_post ? 110 : 67;
                $classtext = 'post-thumb';
                $titletext = get_the_title();
                $thumbnail = get_thumbnail($width,$height,$classtext,$titletext,$titletext,false,'Entry');
                $thumb = $thumbnail["thumb"];
            ?>

            <?php if($thumb <> '' && get_option('aggregate_thumbnails_index') == 'on') { ?>
                <div class="thumb thumbcont">
                    <a href="<?php the_permalink(); ?>">
                        <?php print_thumbnail($thumb, $thumbnail["use_timthumb"], $titletext, $width, $height, $classtext); ?>
                        <span class="overlay"></span>
                    </a>
<a class="thumb<?php $category = get_the_category(); echo $category[0]->category_nicename; ?>" href="<?php bloginfo('url'); ?>/<?php echo $category[0]->category_nicename; ?>"><?php echo $category[0]->cat_name; ?></a>
                </div>  <!-- end .post-thumbnail -->

            <?php } ?>

            <h3 class="title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
            <?php get_template_part('includes/postinfo'); ?>

            <p class="postsummery">
            <?php
              $excerpt = get_the_excerpt();
              echo string_limit_words($excerpt,20);
            ?>
            </p>

            <a href="<?php the_permalink(); ?>" class="more"><span><?php esc_html_e('Read More','Aggregate'); ?></span></a>
        </div>  <!-- end .post-->
<?php endwhile; ?>
    <?php if(function_exists('wp_pagenavi')) { wp_pagenavi(); }
    else { ?>
         <?php get_template_part('includes/navigation','entry'); ?>
    <?php } ?>
<?php else : ?>
    <?php get_template_part('includes/no-results','entry'); ?>
<?php endif; wp_reset_query(); ?>

在进行一些研究时,我发现了一些有关如何执行此操作的详细信息: http : //codex.wordpress.org/Template_Tags/get_posts

但是,由于我对PHP编码的了解非常有限,并且缺乏对当前代码如何与所提供的示例配合使用的了解,因此我找不到解决方法。 你能指导我吗?

您只需在数组(在第3行之后,为什么要导致该数组包含参数,然后将其传递给调用数据库的get posts函数)中,简单地添加'tag'=>您想要列出的标签,需要选择的可以在这里找到http://codex.wordpress.org/Class_Reference/WP_Query#Tag_Parameters完整的代码如下所示

   <?php
    if ( is_home() ) {
        $args=array(
            'showposts'=> (int) get_option('aggregate_homepage_posts'),
            'paged'=>$paged,
            'tag'=>"the tag u want shown",
            'category__not_in' => (array) get_option('aggregate_exlcats_recent')
        );
        if (get_option('aggregate_duplicate') == 'false') {
            global $ids;
            $args['post__not_in'] = $ids;
        }
        query_posts($args);
        global $paged;
    }
    $i = 0;
?>
<?php 
    if (have_posts()) : while (have_posts()) : the_post(); ?>
    <?php
        $i++;
        $et_is_latest_post = ( $paged == 0 && ( is_home() && $i <= 2 ) ) || !is_home();
    ?>
        <div class="post entry clearfix<?php if ( $et_is_latest_post ) echo ' latest'; ?>">
            <?php
                $thumb = '';
                $width = $et_is_latest_post ? 170 : 67;
                $height = $et_is_latest_post ? 110 : 67;
                $classtext = 'post-thumb';
                $titletext = get_the_title();
                $thumbnail = get_thumbnail($width,$height,$classtext,$titletext,$titletext,false,'Entry');
                $thumb = $thumbnail["thumb"];
            ?>

            <?php if($thumb <> '' && get_option('aggregate_thumbnails_index') == 'on') { ?>
                <div class="thumb thumbcont">
                    <a href="<?php the_permalink(); ?>">
                        <?php print_thumbnail($thumb, $thumbnail["use_timthumb"], $titletext, $width, $height, $classtext); ?>
                        <span class="overlay"></span>
                    </a>
<a class="thumb<?php $category = get_the_category(); echo $category[0]->category_nicename; ?>" href="<?php bloginfo('url'); ?>/<?php echo $category[0]->category_nicename; ?>"><?php echo $category[0]->cat_name; ?></a>
                </div>  <!-- end .post-thumbnail -->

            <?php } ?>

            <h3 class="title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
            <?php get_template_part('includes/postinfo'); ?>

            <p class="postsummery">
            <?php
              $excerpt = get_the_excerpt();
              echo string_limit_words($excerpt,20);
            ?>
            </p>

            <a href="<?php the_permalink(); ?>" class="more"><span><?php esc_html_e('Read More','Aggregate'); ?></span></a>
        </div>  <!-- end .post-->
<?php endwhile; ?>
    <?php if(function_exists('wp_pagenavi')) { wp_pagenavi(); }
    else { ?>
         <?php get_template_part('includes/navigation','entry'); ?>
    <?php } ?>
<?php else : ?>
    <?php get_template_part('includes/no-results','entry'); ?>
<?php endif; wp_reset_query(); ?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM