Я относительно новичок в разработке WordPress. Недавно я установил WordPress 5.0.3 и с тех пор столкнулся со странной проблемой. Все, что я пытаюсь сделать, это проверить, содержит ли пост галерею, используя функцию has_shortcode
и передав ей gallery в качестве тега.
Вот как выглядит код, код является выдержкой из пользовательского файла page.php
.
<div class="container">
<?php
$wpb_all_query = new WP_Query(array('post_type' => 'post', 'post_status' => 'publish', 'posts_per_page' => -1));?>
<?php if ($wpb_all_query->have_posts()): ?>
<?php while ($wpb_all_query->have_posts()): $wpb_all_query->the_post();?>
<div class="row">
<div class="col-12">
<div class="d-flex justify-content-center">
<?php esc_html(the_title());?>: <?php
if (has_shortcode(the_content(), 'gallery')):
echo "TRUE";
else:
echo "FALSE";
endif;?>
</div>
</div>
</div>
<?php endwhile;?>
<?php wp_reset_postdata();?>
<?php endif;?>
</div>
Функция has_shortcode
всегда возвращает false, даже если в записи есть галерея.
Не уверен, что этот способ проверки, содержит ли публикация галерею, все еще остается в силе в настоящем выпуске.
Я знаю, что код плохо отформатирован, но не хотел тратить время на его форматирование из-за нехватки времени.