Хранение значений поля acf в массиве - PullRequest
0 голосов
/ 16 мая 2018

Я создаю страницу свойств, и есть раздел, в котором перечисляются области, в которых есть свойства.У меня есть области, хранящиеся в бэкэнде внутри расширенного настраиваемого поля (Город) с пользовательским типом записи.Теперь, когда я перебираю каждое свойство, получая значение и отображая его в списке, я получаю несколько одинаковых значений, так как некоторые свойства имеют один и тот же город.

Итак, что я хочу сделать, так это циклически проходить через свойства, получая для каждого свойства значение пользовательского поля Town и сохранять его в массиве.Но если массив уже содержит то же значение, я не хочу его хранить.Затем я хочу отобразить массив в виде списка.

например;мы начинаем проходить через свойства, хранящие значение настраиваемого поля Town в массиве.Но перед тем, как сохранить его, мы проверяем, существует ли это значение внутри массива, если оно есть, мы его не храним.Когда цикл завершен, мы выводим массив в виде списка.

это то, что я имею до сих пор;

<?php 
    $args = array(
        'post_type'         => 'property',
        'posts_per_page'    => -1,
        'meta_key'          => 'property_status',
        'meta_value'        => 'For Sale'
    );

    $query = new WP_Query($args);
?>

<?php if( $query->have_posts() ): ?>
    <ul>
        <?php while( $query->have_posts() ): $query->the_post(); ?>
            <li><?php get_field('town'); ?></li>
        <?php endwhile; ?>
    </ul>
<?php wp_reset_query(); ?>
<?php endif; ?>

1 Ответ

0 голосов
/ 16 мая 2018

Так вы получите уникальные города с недвижимостью.

<?php 
    $args = array(
        'post_type'         => 'property',
        'posts_per_page'    => -1,
        'meta_key'          => 'property_status',
        'meta_value'        => 'For Sale'
    );

    $query = new WP_Query($args);
?>

<?php if( $query->have_posts() ): ?>
    <ul>
        <?php while( $query->have_posts() ): $query->the_post(); 
             $town_array[] = get_field('town'); ?>
            <li><?php get_field('town'); ?></li>
        <?php endwhile; ?>
    </ul>
<?php wp_reset_query(); ?>
<?php endif; ?>
<?php $towns = array_unique($town_array);
print_r($towns) ?>
...