wordpress 循环显示文章问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了wordpress 循环显示文章问题相关的知识,希望对你有一定的参考价值。

如何让首页的文章列表只显示某一个栏目下的文章?我想循环http://localhost/wordpress/?cat=1里面的文章,并且显示文章里面的图片,不需要它自己分配的图片。下面是代码:

<?php $posts = get_posts( "category=($cat->term_id)&numberposts=5" ); ?>
<?php if( $posts ) : ?><!------判断如果有文章--->
<ul>
<?php foreach( $posts as $post ) : setup_postdata( $post ); ?> <!----循环开始---->
<li>
<div class="sycp">
<div class="a6_1"><?php the_post_thumbnail('thumbnail'); ?></div>
<h3><a href="<?php the_permalink() ?>"><?php echo mb_strimwidth(get_the_title(), 0, 14,"...") ?></a></h3>
<p><a href="<?php the_permalink() ?>"><?php echo mb_strimwidth(strip_tags($post->post_content), 0,66,"..."); ?></a></p>
<div class="week_bok"><a href="<?php the_permalink() ?>"><img src="<?php bloginfo('template_url'); ?>/images/cpbj2.png" /></a></div>
</div>
</li>
<?php endforeach; ?> <!---结束循环--->
<?php else : ?>

<?php endif; ?>

参考技术A 这个代码<?php the_post_thumbnail('thumbnail'); ?>
显示的特色图片。如果你想调用第一张图片可以用<?php echo catch_that_image() ?>,如果没有图片则不显示。
比如把($cat->term_id)改成1,就是调用id为1的分类,改成2就是调用id为2的分。

在wordpress之外运行循环

我知道这已经发布了很多次,但是我确实花了将近60个小时来弄清楚这一点-这不是我的强项!

目前正在运行wordpress,标准安装,没有插件或任何东西。

[我只是想显示博客中的最​​新3篇文章,或者如果我们可以更进一步,则显示catx中的最新3篇文章。

这是我的代码,我认为应该可以。

    <?php 

require '/home1/digita/public_html/articles/wp-load.php'; ?>
  <section class="services blog sec-normal">
    <div class="container">
      <div class="service-wrap">
        <div class="row">
         <style>.wp-block-image {
    max-width: 100%;
    margin-bottom: 1em;
    display: none;
}

a.more-link {
    display: none;
}

.services .service-wrap .service-section a {
     margin-top: 0px!important; 
}

</style>


<?php if (have_posts()) :

  while ( have_posts() ) : the_post();


    ?>      <!-- ***** BLOG ***** -->


   <div class="col-md-4" style="width: 30%;margin-top: -7%;margin-bottom: 10%;">
         <?php 

    if ( has_post_thumbnail() ) {
    the_post_thumbnail();
} ?>
<div class="service-section m-0" style="margin-top: 0.1%;">
              <div class="title mt-0"><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></div>
              <p class="subtitle"><?php  the_content() ?> </p>
              <hr>

              <a href="<?php the_permalink() ?>" class="btn btn-default-yellow-fill">Read more</a>
            </div>

   </div>







    <?php

    // Stop the loop when all posts are displayed
 endwhile;

// If no posts were found
else :
?>
<p>Sorry no posts matched your criteria.</p>
<?php
endif;
?>
</div>

        </div>
      </div>
    </div>
  </section>

该代码不返回帖子,而是返回“抱歉,没有符合您条件的帖子。” 。有什么建议吗?

答案

主查询未设置其数据,因为wp函数在代码中的wp-load.php之后未运行,并且主查询必须基于一些复杂的$_SERVER['REQUEST_URI']进行设置。但是使用辅助查询作为工作的简单方法是很好的:

<?php
require '/home1/digita/public_html/articles/wp-load.php';
$query = new WP_Query(array(
    'post_type' => 'post',
));
?>
<section class="services blog sec-normal">
    <div class="container">
        <div class="service-wrap">
            <div class="row">
                <style>.wp-block-image {
                        max-width: 100%;
                        margin-bottom: 1em;
                        display: none;
                    }

                    a.more-link {
                        display: none;
                    }

                    .services .service-wrap .service-section a {
                        margin-top: 0px!important;
                    }

                </style>


                <?php if ($query->have_posts()) :

                    while ( $query->have_posts() ) : $query->the_post();


                        ?>      <!-- ***** BLOG ***** -->


                        <div class="col-md-4" style="width: 30%;margin-top: -7%;margin-bottom: 10%;">
                            <?php

                            if ( has_post_thumbnail() ) {
                                the_post_thumbnail();
                            } ?>
                            <div class="service-section m-0" style="margin-top: 0.1%;">
                                <div class="title mt-0"><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></div>
                                <p class="subtitle"><?php  the_content() ?> </p>
                                <hr>

                                <a href="<?php the_permalink() ?>" class="btn btn-default-yellow-fill">Read more</a>
                            </div>

                        </div>







                    <?php

                        // Stop the loop when all posts are displayed
                    endwhile;

// If no posts were found
                else :
                    ?>
                    <p>Sorry no posts matched your criteria.</p>
                <?php
                endif;
                ?>
            </div>

        </div>
    </div>
    </div>
</section>

以上是关于wordpress 循环显示文章问题的主要内容,如果未能解决你的问题,请参考以下文章

php 这个WordPress插件演示了如何使用WordPress提供的可拖动元文件构建自己的插件页面,需要WordPr

Wordpress 搜索功能仅搜索帖子

将子文件夹重定向到 Wordpress 而不显示 URL

在wordpress之外运行循环

在 Wordpress 中确认离开外部链接

LAMP搭建Wordpress博客