確認はしていないですが、少なくともWP_Queryを使うのであれば、
<?php if(have_posts()): ?>
<?php while(have_posts()): the_post(); ?>
の部分は以下に変えないといけないかと思います。
<?php if ( $my_query->have_posts() ) : ?>
<?php while ( $my_query->have_posts() ) : $my_query->the_post(); ?>
ご教授ありがとうございます。
<?php $args = array(
//ソート
'orderby' => 'meta_value',
'meta_key' => 'yomigana',
'order' => 'ASD'
);
$my_query = new WP_Query( $args ); ?>
<?php if ( $my_query->have_posts() ) : ?>
<?php while ( $my_query->have_posts() ) : $my_query->the_post(); ?>
と記述しましたが、何も吐き出されなくなってしまいました。
WP_Query
の記述は正しいように見えます。
ですから、どのテーマファイルにお書きになったのかを知りたいのですが。
できればループ内の記述も知りたいです。
LABEさま
ご回答をありがとうございます。
archive-cplist.phpに、以下の通り記述しております。
<section class="ctAria">
<section class="ctAriaIn">
<?php $args = array(
//ソート
'orderby' => 'meta_value',
'meta_key' => 'yomigana',
'order' => 'ASD'
);
$my_query = new WP_Query( $args ); ?>
<?php
// the query
$the_query = new WP_Query( $args ); ?>
<?php if ( $the_query->have_posts() ) : ?>
<?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
<div class="corpBox">
<table>
<tr>
<th rowspan="4" class="r03_th">
<?php the_title(); ?>
<br>
<span class="worksIcon">
<?php if( get_field('cp_type') ) { ?>
<?php the_field('cp_type'); ?>
<?php } ?>
</span>
<?php if(get_field("cp_url")): ?>
<span class="websiteIcon">
<a href="<?php the_field('cp_url'); ?>" target="_blank">WEBサイト</a>
</span>
<?php else : ?>
<?php endif; ?>
</th>
<td class="td02">所在地:</td>
<td class="td03">
<?php if( get_field('cp_address') ) { ?>
<?php the_field('cp_address'); ?>
<?php } ?>
</td>
</tr>
<tr>
<td class="td02">よみがな:</td>
<td class="td03">
<?php if( get_field('yomigana') ) { ?>
<?php the_field('yomigana'); ?>
<?php } ?>
</td>
</tr>
<tr>
<td class="td02">TEL:</td>
<td class="td03">
<?php if( get_field('cp_tel') ) { ?>
<?php the_field('cp_tel'); ?>
<?php } ?>
</td>
</tr>
<tr>
<td class="td02">FAX:</td>
<td class="td03">
<?php if( get_field('cp_fax') ) { ?>
<?php the_field('cp_fax'); ?>
<?php } ?>
</td>
</tr>
</table>
</div>
<?php endwhile; ?>
<?php wp_reset_postdata(); ?>
<?php else : ?>
<?php endif; ?>
<div class="pageNav"><?php if(function_exists('wp_pagenavi')) { wp_pagenavi(); } ?></div>
</section>
</section>
'order' => 'ASD'
は
'order' => 'ASC'
ですが、
LABEさんが書かれているように、ASCは小文字でも大丈夫なようです。
ioxrxogiさま
ありがとうございます。
'order' => 'ASC'
としましたが、何も吐き出されません。
ループタグを
<?php if(have_posts()): ?>
<?php while(have_posts()): the_post(); ?>
にすると、ソートはされませんが、吐き出しはされ、記事を表示してくれます。
本筋から外れますが、
$my_query = new WP_Query( $args );
は不要ですね。
あと、wp_pagenaviはwp_reset_postdata();
の前にないとうまく動かなかった気がします。
加えて$args
に'paged' => get_query_var('paged')
があったほうが良い気もします。
カスタム投稿タイプなので、 $argsに
'post_type' => 'cplist'
が必要ですね。
何も指定しないとpostになっているために'meta_key' => 'yomigana'
の投稿がないんだと思います。
ikaringさま
おっしゃる通りの記述に修正しましたところ、無事にソートされたものが表示されました!!
本当にありがとうございました。
ご教授いただいた皆様方へも深く感謝いたします。
ご丁寧に教えていただきまして、ありがとうございました。