WordPress.org

Ready to get started?Download WordPress

Forums

Displaying Related Posts with Custom Post Type (7 posts)

  1. sophieyanow
    Member
    Posted 3 years ago #

    Hi folks!

    I'm trying to create a list of thumbnails of related posts within a custom post type.

    I found the following code over at wpbeginner:

    <?php $orig_post = $post;
    global $post;
    $categories = get_the_category($post->ID);
    if ($categories) {
    $category_ids = array();
    foreach($categories as $individual_category) $category_ids[] = $individual_category->term_id;
    
    $args=array(
    'category__in' => $category_ids,
    'post__not_in' => array($post->ID),
    'posts_per_page'=> 2, // Number of related posts that will be shown.
    'caller_get_posts'=>1
    );
    
    $my_query = new wp_query( $args );
    if( $my_query->have_posts() ) {
    echo '<div id="related_posts"><h3>Related Posts</h3><ul>';
    while( $my_query->have_posts() ) {
    $my_query->the_post();?>
    
    <li><div class="relatedthumb"><a href="<? the_permalink()?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_post_thumbnail(); ?></a></div>
    <div class="relatedcontent">
    <h3><a href="<? the_permalink()?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h3>
    <?php the_time('M j, Y') ?>
    </div>
    </li>
    <?
    }
    echo '</ul></div>';
    }
    }
    $post = $orig_post;
    wp_reset_query(); ?>

    which would work if I were using a regular post. In order to display a list of custom posts from a specific category elsewhere, I've used this:

    <?php
      query_posts( array( 'post_type' => 'lv_video', 'category_name' => 'featured' ) );
      if ( have_posts() ) : while ( have_posts() ) : the_post();
    ?>
    
    <li>
      <?php the_excerpt(); ?>
    </li>
    
    <?php endwhile; endif; wp_reset_query(); ?>

    But I'm not sure how to modify the first code to reflect my custom post type.

  2. MichaelH
    Member
    Posted 3 years ago #

    $args=array(
    'post_type' => 'your post type here',
    'category__in' => $category_ids,
    'post__not_in' => array($post->ID),
    'posts_per_page'=> 2, // Number of related posts that will be shown.
    'caller_get_posts'=>1
    );
  3. sophieyanow
    Member
    Posted 3 years ago #

    Thanks MichaelH! Awesome. I have very little knowledge of PHP and I've forgotten a lot of other programming... but that makes sense. I'll try it out.

  4. blackstudio
    Member
    Posted 2 years ago #

    sophieyanow - did that work? i'm using the same code and trying to do the same thing but can't get it to work..... any thoughts?

  5. benito64
    Member
    Posted 2 years ago #

    Hi,

    I'm pretty curious about this topic too.
    I can't get post__in and post__not_in to work with custom post types.
    The example below works fine with the 'post_type' line commented (standard post query).
    Here's what happens if I uncomment this line in order to query custom posts : using post__in, I get no posts at all, and using post__not_in I get all the posts including the ones I want to exclude.

    Any clue ? (I'm using WP 3.1.3 by the way)
    Thanks

    $custom_query = new WP_Query(array(
    //	'post_type'=>'header_images',
    	'posts_per_page' => -1,
    	'post__in' => array(234),
    	'orderby' => 'menu_order',
    	'order' => 'ASC'
    ));
  6. benito64
    Member
    Posted 2 years ago #

    Oops... there was something wrong in my code, that was pretty tricky indeed, but WP was not involved. Sorry.

  7. gcoghill
    Member
    Posted 2 years ago #

    I added this code into my single-custom-post-type.php but see nothing when I refresh the page.

Topic Closed

This topic has been closed to new replies.

About this Topic