You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress单页站点:如何在#portfolio容器加载文章而非首页内容?

解决单页站点中Portfolio容器加载指定文章的问题

你碰到的核心问题是:单页模板里默认的have_posts()循环会调用当前页面(也就是首页)的主查询,所以才会显示首页的内容。要在#portfolio容器里加载你想要的Portfolio文章,你需要创建一个自定义查询来精准获取目标内容,而不是用默认的主循环。

下面是调整后的完整代码,我给你加了详细注释:

<div id="portfolio">
  <div class="head-title col-md-12">
    <h1 class="h1b">Portfolio</h1>
  </div>
  <?php
  // 定义自定义查询参数,按需修改
  $portfolio_args = array(
    'post_type' => 'post', // 如果是自定义文章类型(比如专门的portfolio类型),改成对应的名称
    'posts_per_page' => -1, // 加载所有相关文章,也可以设成固定数字比如6
    'category_name' => 'portfolio', // 筛选属于"portfolio"分类的文章,替换成你的分类别名
    'orderby' => 'date', // 按发布时间排序
    'order' => 'DESC' // 最新的在前
  );

  // 初始化自定义查询对象
  $portfolio_query = new WP_Query($portfolio_args);

  // 检查是否有匹配的文章
  if ($portfolio_query->have_posts()) :
    // 开始循环遍历文章
    while ($portfolio_query->have_posts()) : $portfolio_query->the_post();
  ?>
      <!-- 单个Portfolio项目的结构,你可以根据自己的样式调整 -->
      <div class="portfolio-item">
        <!-- 显示文章缩略图 -->
        <?php if (has_post_thumbnail()) : ?>
          <div class="portfolio-thumb">
            <?php the_post_thumbnail('medium'); // 可以换成'large'或自定义尺寸 ?>
          </div>
        <?php endif; ?>
        <!-- 文章标题 -->
        <h3 class="portfolio-title"><?php the_title(); ?></h3>
        <!-- 文章摘要(如果要显示全文,把the_excerpt()换成the_content()) -->
        <div class="portfolio-excerpt">
          <?php the_excerpt(); ?>
        </div>
      </div>
  <?php
    endwhile;
    // 必须重置查询!恢复主查询的全局变量,避免影响页面其他部分
    wp_reset_postdata();
  else :
    // 没有找到文章时的提示
    echo '<p>暂时没有Portfolio项目可以展示哦~</p>';
  endif;
  ?>
</div>

几个关键注意点:

  • 自定义文章类型适配:如果你为Portfolio创建了专门的自定义文章类型(比如注册了portfolio类型),记得把post_type的值改成对应的名称,这样就能精准获取这类文章。
  • 缩略图功能开启:如果你的主题还没开启文章缩略图,需要在functions.php里添加一行代码:add_theme_support('post-thumbnails');,否则has_post_thumbnail()会返回false,缩略图就显示不出来了。
  • 精准筛选文章:如果不想用分类筛选,也可以直接指定文章ID,比如用'post__in' => array(123, 456)来加载ID为123和456的文章,同时加上'orderby' => 'post__in'可以保持你指定的顺序。

这样修改后,#portfolio容器里就会显示你指定的Portfolio文章,而不是首页内容啦~

内容的提问来源于stack exchange,提问作者amyvl

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:29:11