У меня есть 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.Если это так, он отображает Да, в противном случае он отображает №
'<?php
if( !empty($serviced_ids) && is_array($serviced_ids) &&
in_array($serviced->ID, $serviced_ids) ): ?>
Yes
<?php else: ?>
No
<?php endif; ?> '
Пока все хорошо ...
Затем я хочу добавить условный элемент в вывод ELSE, еслиCPT ID равен 50. Я не могу заставить это работать.
Я пробовал
'<?php else: ?>
<?php if($products->ID = 50): ?>
<?php echo $something; ?>
<?php endif; ?>'
Моя беглость с PHP не так уж велика и не может пройти через это.
Вывод, который я ищу:
НАИМЕНОВАНИЕ ПРОДУКТА
- Название услуги: Да
- Название услуги: Да
- Имя службы: нет
- Имя службы: $ что-то еще
- Имя службы: Да
НАИМЕНОВАНИЕ ПРОДУКТА
- Имя службы: Нет
- Имя службы: нет
- Имя службы: нет
- Имя службы: $ что-то еще
- Имя службы: нет