質問: new wp_query( 'post_type=produkts&post_parent='.$post->id.'' ); while( $query->have_posts() ) : $query->the_post(); echo '<li>'; the_title(); echo '</li>'; endwhile; wp_reset_postdata(); } ?> </div> <?php get_footer();?>
回答: 私は似たようなものを必要としていました、そして、私は物事をより簡単にするこの単純な小さい機能を思い付きました:function is_child_post($parent_id = null) { global $post; if (isset($parent_id) && $parent_id != null){ return $post->post_parent == $parent_id; } return $post->post_parent > 0; } 使用法:投稿/ページ/カスタムに親があるかどうかを確認します。if (is_child_post()){ //yes we have a parent }else{ //not its a top level parent } post/page/customがidが32の特定の親の子かどうかを確認します。if (is_child_post(32)){ //yes its a child of a parent with the id of 32 }else{ //not its a child of a parent with the id of 32 } そのため、この便利な機能を手に入れたら、child-products.phpテンプレートファイルを作成してから 'template_redirect'フックを使用してwordpressにいつ使用するかを通知できます。function custom_child_template_redirect($single_template) { global $post; if ($post->post_type == 'your_type' && is_child_post()) { //change your_type to your custom post type name return templatepath . '/child-products.php'; // change child-products.php to the name of your child template file } return $single_template; } add_action( 'template_redirect', 'custom_child_template_redirect' );