0

wordpressでフェスサイトのラインナップページを作っています。ワードプレスのテーマ「アーティスト」にカスタム投稿タイプを追加しました。異なる日を表す 3 つのカテゴリと、各フェスティバルの異なるステージを表す 2 つのカテゴリがあります。ここで、すべてのアーティストを日別およびステージ別に表示したいと考えています。例えば:

金曜日
ROOM1: ARTIST1, ARTIST2, ARTIST3, ...
ROOM2: ARTIST4, ARTIST5, ARTIST6, ... 土曜日 ROOM1: ARTIST1, ARTIST2, ARTIST3, ... ROOM2: ARTIST4,
ARTIST5 , ARTIST6, ...日曜日 ROOM1: ARTIST1 、ARTIST2、ARTIST3、… ROOM2: ARTIST4、ARTIST5、ARTIST6、…





私は何時間もこれに適したコードを見つけようとしましたが、葉巻はありませんでした.カスタム投稿タイプであるため、ここで「カテゴリ」の使用は間違っていますか?

ご協力いただきありがとうございます

<h2>FRIDAY</h2>
                        <?php // the loop ?>
                            <?php $query = new WP_Query( array( 'category__and' => array( 6, 7 ) ) ); ?>

                            <?php if ($query->have_posts()) : ?>

                                <?php while ($query->have_posts()) :$query->the_post(); ?>

                                    <?php $query->get_template_part( 'includes/loop' , 'index'); ?>

                                <?php endwhile; ?>                  

                            <?php else : ?>

                                <p><?php _e( 'Sorry, no artists found.', 'themify' ); ?></p>

                            <?php endif; ?> 


                        <h2>SATURDAY</h2>

                        <h2>SUNDAY</h2>
4

2 に答える 2

0

扱っているカスタム投稿タイプとして、追加してクエリでこれを指定する必要があります'post_type' => 'artist'

カテゴリに関しては、カスタム カテゴリを使用している場合はこちらも参照してください。次のようなものを追加する必要があります。

'tax_query' => array(
    array(
        'taxonomy' => 'category',
        'field' => 'id',
        'terms' => array(6,7)
    )
)

'category__in' => array(6,7)デフォルトの WP カテゴリを使用している場合は、category__and の代わりに: を使用できるはずです。

于 2013-01-10T12:58:38.383 に答える
0

次のようなことを試してみてください。

<?php $query = new WP_Query( 
                   array(
                       'tax_query' => array(
                            array(      
                                'taxonomy' => '[taxonomy-name]',
                                'field' => 'id',
                                'terms' => array(6, 7),
                                'operator' => 'AND'
                            )
                        ),
                        'posts_per_page' => -1
                    )
                ); ?>

<?php if ($query->have_posts()) : ?>
    <?php while ($query->have_posts()) :$query->the_post(); ?>
        <?php $query->get_template_part( 'includes/loop' , 'index'); ?>
    <?php endwhile; ?>                  
<?php else : ?>
   <p><?php _e( 'Sorry, no artists found.', 'themify' ); ?></p>
<?php endif; ?>

正しい分類名を入力することを忘れないでください。配列に用語を追加するだけで済みます。これがお役に立てば幸いです。

于 2013-01-11T10:42:27.927 に答える