Пользовательский почтовый заказ с двумя полями ACF - PullRequest
0 голосов
/ 20 сентября 2019

Я создал CPT для «Местоположений», и я использую поле отношения ACF, чтобы перетаскивать соответствующий персонал из моего «CPT» на каждую страницу местоположений.Прямо сейчас я сортирую их по алфавиту, но мой клиент попросил добавить классификацию для каждого человека.Я создал группу полей с радиокнопками, чтобы представить каждую опцию в CPT People.Для простоты каждому человеку присваивается номер от 1 до 5.Мой клиент хотел бы, чтобы сообщения затем упорядочивались следующим образом:

  • Группа № 1 в алфавитном порядке
  • Группа № 2 в алфавитном порядке

... и так далее и так далее.

Как я могу сортировать, как это?Моя группа переключателей называется «порядок групп».

Вот код, который у меня есть:

  <?php
                    /**
                     * The Template for displaying single posts.
                     */?>

            <?php while ( have_posts() ) : the_post(); ?>

            <?php

                                            /*
                                            *  Query posts for a relationship value.
                                            *  This method uses the meta_query LIKE to match the string "123" to the database value a:1:{i:0;s:3:"123";} (serialized array)
                                            */

                    $staff = get_posts(array(
                      'post_type' => 'people',
                      'posts_per_page' => -1,
                      'orderby' => 'title',
                      'order'   => 'ASC',
                      'meta_query' => array(
                          array(
                              'key' => 'location', // name of custom field
                              'value' => '"' . get_the_ID() . '"', // matches exactly "123", not just 123. This prevents a match for "1234"
                              'compare' => 'LIKE',
                          )
                      )
                  ));

                                            ?>
              <div class="people-grid">
                <?php if( $staff ): ?>
                <?php foreach( $staff as $doctor ): ?>
                <?php

                                                    $photo = get_field('photo', $doctor->ID);

                                                    ?>
                  <div class="single-person">
                    <img src="<?php echo $photo['url']; ?>" alt="<?php echo $photo['alt']; ?>" />
                    <h3>
                      <?php echo get_field('first_name', $doctor->ID); ?> <?php echo get_field('middle_initial', $doctor->ID); ?> <?php echo get_field('last_name', $doctor->ID); ?><?php $credentials = get_field('credentials', $doctor->ID);if ($credentials) { ?>, <?php echo get_field('credentials', $doctor->ID); ?>
                    <?php } ?>
                    </h3>
                    <p><?php echo get_field('title', $doctor->ID); ?></p>

                  </div>
                  <?php endforeach; ?>
              </div>
              <?php endif; ?>

              <?php endwhile; // end of the loop. ?>
...