试图在PHP中更改过滤的库的顺序

时间:2016-01-22 10:18:57

标签: php jquery wordpress filter

我正在使用wordpress网站,该网站在投资组合页面上显示画廊。我遇到的问题是没有选项以自定义顺序显示图库,它只是按字母顺序显示图库。我已经尝试更改图库名称的slu its,以便它们按时间顺序排列,与我希望它们出现的顺序相匹配,但这不起作用。下面是代码,我需要更改什么才能按slug名称的顺序显示它们?

<div class="filter row animated">
    <div class="albums">
        <div class="content">
            <?php if ( $albums && !is_wp_error( $albums ) ) : ?>
                <ul>
                    <?php if ( $portfolio_showall == "on") : ?>
                        <li data-album='all' class='all selected'><span><?php echo __( 'All', 'turin'); ?></span></li>
                        <?php endif; ?>
                            <?php foreach ( $albums as $album ) { ?>
                                <li data-album="<?php echo esc_attr( $album->slug ); ?>"><span><?php echo esc_attr( $album->name ); ?></span></li>
                                <?php } ?>
                </ul>
                <select>
                    <?php if ( $portfolio_showall == "on") : ?>
                        <option data-album='all'>
                            <?php echo __( 'All', 'turin'); ?>
                        </option>
                        <?php endif; ?>
                            <?php foreach ( $albums as $album ) { ?>
                                <option data-album="<?php echo esc_attr( $album->slug ); ?>">
                                    <?php echo esc_attr( $album->name ); ?>
                                </option>
                                <?php } ?>
                </select>
                <?php endif;?>
        </div>
    </div>
</div>

1 个答案:

答案 0 :(得分:0)

我刚刚解决了它,还有一些代码需要改变,我改变了

        $album_terms = get_the_terms( get_the_ID(), 'album' );
    if( !empty($album_terms) ) {
        foreach ( $album_terms as $album_term  ) {
            $term_IDs[] = $album_term->term_id;
        }
        $album_args = array( 'orderby' => 'name', 'order' => 'ASC', 'include' => $term_IDs, 'hide_empty' => false, 'fields' => 'all' );
    } else {
        $album_args = array( 'orderby' => 'name', 'order' => 'ASC', 'hide_empty' => false, 'fields' => 'all' );
    }
    $albums = get_terms( 'album', $album_args );
    ?>

阅读

        $album_terms = get_the_terms( get_the_ID(), 'album' );
    if( !empty($album_terms) ) {
        foreach ( $album_terms as $album_term  ) {
            $term_IDs[] = $album_term->term_id;
        }
        $album_args = array( 'orderby' => 'slug', 'order' => 'ASC', 'include' => $term_IDs, 'hide_empty' => false, 'fields' => 'all' );
    } else {
        $album_args = array( 'orderby' => 'slug', 'order' => 'ASC', 'hide_empty' => false, 'fields' => 'all' );
    }
    $albums = get_terms( 'album', $album_args );
    ?>

现在一切似乎都有效了!