Итак, я пытаюсь вернуть строку HTML в инструкции PHP if, но по какой-то причине она не выполняется.WordPress/PHP, если инструкция не выполняется
<?php
$args_commercial = array(
'post_type' => 'sidebar_post'
);
$query_commercial = new WP_Query($args_commercial);
?>
<ul>
<?php if (have_posts()) : while ($query_commercial->have_posts()) : $query_commercial->the_post(); ?>
<?php
$thumb_id = get_post_thumbnail_id();
$thumb_url_array = wp_get_attachment_image_src($thumb_id, 'thumbnail-size', true);
$thumb_url = $thumb_url_array[0];
?>
<li data-id="0">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php
$page_field = strtolower(get_field('page'));
$page_title = strtolower(get_the_title());
if ($page_field == $page_title): ?>
<a href="<?php echo get_field('link'); ?>" style="background-image: url(<?php echo $thumb_url; ?>)"><span><?php the_title(); ?></span></a>
<?php endif; ?>
</li>
<?php endwhile; endif; ?>
<?php endwhile; endif; ?>
</ul>
Так просто объяснить, я зацикливание в пользовательский тип записи (на боковой панели с записями) и в рамках этого пользовательского типа пост является возможность выбора, какую страницу вы хотите, чтобы отобразить пользовательский тип записи.
Это то, что представляет переменная $ page_field. $ Page_title - это просто название страницы. Поэтому теоретически, если выбранное пользователем поле страницы и фактическое название страницы одинаковы, HTML будет напечатан, а затем отобразится боковая панель.
Теперь по какой-либо причине HTML внутри блока if не выполняется, даже если $ page_title и $ page_field - это то же самое значение (я проверил их, повторив их).
Я действительно не уверен, как отлаживать дальше и следить за тем, чтобы HTML отображался в обычном режиме. Любая помощь будет очень восприимчивой
Спасибо.
var_dump ($ page_field); var_dump ($ page_title); убедитесь, что эти значения являются такими же, как вы ожидаете. – Kaylined
@Kaylined I var_dumped them, и они оба печатают строку (0) "" string (22) "коммерческая воздушная хартия" ' –
Итак, ваш первый var пуст. если ("" == "коммерческая воздушная хартия") недействительна. – Kaylined