php 使用ACF手动选择帖子,如果未选择一个帖子,则回退到随机帖子,排除所选帖子和当前帖子

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 使用ACF手动选择帖子,如果未选择一个帖子,则回退到随机帖子,排除所选帖子和当前帖子相关的知识,希望对你有一定的参考价值。

@define $posts = get_field('related_projects')
@define $exclude = [get_the_id()]
@define $custom_posts = count($posts)

@if( $posts )
  @foreach($posts as $post)
     {{ setup_postdata($post) }}

    @define $exclude[] = $post->ID

    @include('templates.related-projects')

  @endforeach
  {{ wp_reset_postdata() }}
@endif

@unless($custom_posts > 2 )
  {{
    $args = [
      'post_type'      => 'projects',
      'orderby'        => 'rand',
      'post__not_in'   => $exclude,
      'posts_per_page' => (3 - $custom_posts)
    ];
  }}
  @wpquery($args)

    @include('templates.related-projects')

  @wpempty
  @wpend
@endunless

以上是关于php 使用ACF手动选择帖子,如果未选择一个帖子,则回退到随机帖子,排除所选帖子和当前帖子的主要内容,如果未能解决你的问题,请参考以下文章

php 通过acf选择字段查询类别中的自定义帖子类型

php 通过acf选择字段查询类别中的自定义帖子类型

使用自定义帖子类型的标题列表作为 ACF 字段的值

在帖子创建期间计算 PHP date_diff 并保存到 ACF 字段

如何在页面模板中将ACF关系帖子显示为循环

来自自定义帖子分类法循环的 slug 列表(Wordpress + ACF Pro)