I am using WP_Query to loop a Custom Field, Custom Post Type that shows 6 Menu Icons across 6 horizontal fields. The icons do not show on the page.

My query code is:

<?php $loop = new WP_Query( array( 'post_type' => 'course_feature', 'orderby', => 'post_id', 'order' => 'ASC')); ?>

code to show loop:

<?php while( $loop->have_posts() ) : $loop->the_post(); ?>
<div class="col-sm-2">
<i class=<?php the_field('course_feature_icon'); ?>"</i>
</div>

<?php endwhile; ?> 

2 Answers
2

There’s a missing opening quote and closing bracket on this line:

<i class=<?php the_field('course_feature_icon'); ?>"</i>

Needs to be:

<i class="<?php the_field('course_feature_icon'); ?>"></i>

That’s all that’s wrong with your code. It should then work assuming:

  1. You have a custom field, course_feature_icon, whose value is a valid CSS class.
  2. You have the necessary CSS to add an icon based on that class.

One last suggestion though. For safety you should escape the field value before outputting it as a class:

<i class="<?php echo esc_attr( get_field('course_feature_icon') ); ?>"></i>

Leave a Reply

Your email address will not be published. Required fields are marked *