私は 'award'というカスタム投稿タイプを作成しました。私はarchive-award.php
におり、私は '賞'の投稿のリストを表示しています。ここまでは順調ですね。AJAXで動作しないカスタム投稿タイプのクエリ
今度は、[詳細をロード]ボタンをクリックして、次の投稿をAJAX経由で取得します。これはAJAXスクリプトに渡すアクションです:
function load_next_award_posts() {
$args = array(
'paged' => 2,
'post_type' => 'award',
'post_status' => 'publish'
);
$next_posts = new WP_Query($args);
if($next_posts->have_posts()) :
while($next_posts->have_posts()) : $next_posts->the_post();
echo '<p>Hello</p>';
endwhile;
endif;
wp_reset_postdata();
die();
}
残念ながら、クエリは結果を返しません。代わりにpost_type
をデフォルトのpost
またはpage
に変更すると、すべて正常に動作します。どうしたの?カスタム投稿タイプでクエリが機能しないのはなぜですか?
あなたはこれまで、あなたのAJAX呼び出しアクションとAjaxコードを追加することができます。 –
@SunilDora私のajax呼び出しとコードは問題ありません。そうでなければ 'post_type'を' post'や 'page'に変更すると結果が得られません。この問題は、カスタム投稿タイプを照会するときにのみ発生するため、関連するものでなければなりません。 – grazianodev
https://premium.wpmudev.org/blog/load-posts-ajax/この記事を読むだけで、投稿タイプの世話をする必要はありません。それはあなたにとって完璧なことです。 –