PHP在页面顶部显示某些内容,之后休息

时间:2018-10-09 14:23:10

标签: php wordpress

WordPress团队成员可以在admin中进行选择,使您可以选择一个数字以在“存档”页面上按特定顺序显示团队。 Select返回一个数字值,我可以检索该值。

但是,我想首先显示所有值为1的成员,之后显示所有成员。目前,IF语句仅显示内容(如果存在)(显然),但是我想以某种方式使其起作用,因此它首先显示值为1的成员,然后显示值为2的成员。谢谢!

$images = get_field('image');
$titles = get_the_title();
$positions = get_field('position');
$link = get_permalink($post->ID);

if ($positions[0] == 1) {
    echo "<div class='employee'>";
    echo "<img src='$images'>";
    echo "<h2>$titles</h2>";
    echo "</div>";
}

if ($positions[0] == 2) {
    echo "<div class='employee'>";
    echo "<img src='$images'>";
    echo "<h2>$titles</h2>";
    echo "</div>";
}

2 个答案:

答案 0 :(得分:0)

如果要对$ positions数组进行排序,可以使用

MAXERROR

答案 1 :(得分:0)

您可以使用get_posts()轻松按元值进行排序。

<?php
$args = array(
    'post_type'         => 'team_members',
    'posts_per_page'    => -1,
    'meta_key'          => 'position',
    'orderby'           => 'meta_value',
    'order'             => 'ASC'
);

$posts = get_posts( $args );
?>

<?php if( $posts ): ?>

    <ul>
    <?php foreach( $posts as $post ): setup_postdata( $post ) ?>
        <li class='employee'>
            <img src='$images'>
            <h2>$titles</h2>
        </li>
    <?php endforeach; ?>
    </ul>

    <?php wp_reset_postdata(); ?>

<?php endif; ?>
相关问题