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

如何在WordPress ACF关联产品循环中排除私密产品?

解决方案

要实现保留ACF选择器中的私密产品,但前端仅显示公开产品的需求,只需在输出产品前增加帖子状态判断即可,具体修改如下:

修改后的完整代码

<?php
while ( have_rows( 'similar_product' ) ) {
    the_row();
    $products = get_sub_field( 'select_product' ); 
    if ( $products !== false ) {
        // 新增:过滤私密状态的产品
        if ( get_post_status( $products->ID ) !== 'private' ) {
?>
            <a href="<?php echo get_the_permalink( $products->ID ) ?>">
                <?php echo get_the_post_thumbnail( $products->ID, 'medium' ); ?>
            </a>
<?php
        }
    }
}
echo "</div>";
?>
    </div>
<?php } ?>

关键改动说明

  • 新增get_post_status( $products->ID ) !== 'private'条件:利用WordPress内置函数get_post_status()获取产品状态,仅当状态不为private(私密)时才渲染前端内容
  • 保留ACF字段的选择记录:ACF关联字段的存储值不会被修改,当私密产品后续改为公开状态后,会自动在前端显示,无需重新配置选择项

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 15:12:21