wordpress - 嵌套循环和 ACF 关系查找中的 Wordpress 条件
问题描述
我有 WP_query 查找产品。
'<?php
$args = array(
'post_type' => 'products',
'posts_per_page' => -1 ,
'order' => 'ASC',
'orderby' => 'menu_order',
);
$products = new WP_Query( $args );?>
<?php if ( $products->have_posts() ) : ?>
<!-- layout stuff -->
<?php while ( $products->have_posts() ) : $products->the_post(); ?>
<!-- layout stuff -->'
在产品循环中,get_posts 拉入 CPT 帖子列表。
'<?php
$serviced_ids = get_field('serviced');
$serviced = get_posts(array(
'post_type' => 'services',
'posts_per_page' => -1
));
?>
<?php if( $serviced ): ?>
<!-- layout stuff -->
<?php foreach( $serviced as $service ): ?>'
在每个 CPT 帖子旁边,它会查看产品是否存在于 ACF 关系中。如果是,则显示 Yes,否则显示 No。
'<?php
if( !empty($serviced_ids) && is_array($serviced_ids) &&
in_array($serviced->ID, $serviced_ids) ): ?>
Yes
<?php else: ?>
No
<?php endif; ?> '
到目前为止,一切都很好 ...
然后,如果 CPT ID 等于 50,我想在 ELSE 输出中添加一个条件元素。我无法让它工作。
我试过了
'<?php else: ?>
<?php if($products->ID = 50): ?>
<?php echo $something; ?>
<?php endif; ?>'
我对 PHP 的流利程度不是很高,无法超越这一点。
我正在寻找的输出是:
产品名称
- 服务名称:是
- 服务名称:是
- 服务名称:无
- 服务名称:$something else
- 服务名称:是
产品名称
- 服务名称:无
- 服务名称:无
- 服务名称:无
- 服务名称:$something else
- 服务名称:无
解决方案
感谢 Pendo 用 get_the_ID() 引导我朝着正确的方向前进。我需要的代码行是:
'<?php if( get_the_ID() === 50) : ?>'
推荐阅读
- javascript - JavaScript 或 JQuery 从通过 for 循环生成的多个选择表中的选择选项中获取正确的选择值
- session - 如何提高tensorflow sess.run()的进动速度
- java - 打印由 n 个字符组成的所有可能的长度为 k 的字符串,没有重复结构
- corda - 如何管理或增加 JDBC 最大连接池大小?
- php - PHP邮件程序没有错误但消息没有发送
- json - 如何使用 Spring 5 从 JSON 响应中仅检索直接子对象
- android - ListView 正在混合编辑文本
- reactjs - 无法从另一个渲染另一个组件
- python-3.x - 我们如何在运行时为烧瓶 API 分析内存、CPU 负载?
- c++ - 在 2D int 向量上使用 std::fill