TG90
TG90

Reputation: 85

Pull latest posts from a specific category

I am trying to pull latest posts from a specific category.

I am currently able to pull all latest posts and display them the way I want using the code below but I am unable to do the same thing from a specific category.

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div id="content"><div id="circle"><div id="circle_text1"><p><?php the_time('M') ?></p></div>
<div id="circle_text2"><p><?php the_time('dS') ?></p></div></div>
<div id="text"><div id="title"><p><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></p></div>
<div id="name"><p>By <?php the_author(); ?></p></div>
<div id="blurb"><p><?php the_content('<br />Read More'); ?></p></div></div>
<div id="line_rule"><p>&nbsp;</p><hr /></div></div>
<?php endwhile; ?><?php else : ?><h2>Not Found</h2><?php endif; ?>

Thanks in advance

Upvotes: 0

Views: 2985

Answers (5)

alesub
alesub

Reputation: 1492

You can do that by simply by adding this first line to your code:

<?php query_posts( 'category_name=slug_of_your_category&posts_per_page=10' ); ?>

Replace "slug_of_your_category" with the slug of your category, and "10" with the amount of posts you need.

Upvotes: 0

Leeloo
Leeloo

Reputation: 111

Add this line of code above your opening IF statement.

<?php query_posts( 'cat=1' ); ?>

And then change the 1 to match the ID of the category you are trying to display.

:)

Upvotes: 0

IanB
IanB

Reputation: 314

I do this all the time. This will work: Change the cat= number to whatever category ID you want to use. Add html markup as you please and whatever other content you want to pull.

<?php query_posts('cat=4&order=ASC');
if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php the_content(); ?>
<?php endwhile; ?>
<?php endif; ?>
<?php wp_reset_query(); ?>

In the example I am only grabbing the post content, but you could put in the title, meta-data, etc. The important parts are all here. Try it out.

Upvotes: 0

markratledge
markratledge

Reputation: 17561

This is a basic WP query that resets itself and can be used multiple times in a template. You can add your html to it. showposts is the number of posts to show; -1 shows all posts.

<?php $my_query = new WP_Query('category_name=mycategoryname&showposts=10'); ?>

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

<a href="<?php the_permalink() ?>" title="<?php the_title(); ?>">

<?php the_title(); ?></a>

<?php endwhile; ?>

Upvotes: 1

Aqeel
Aqeel

Reputation: 689

if you are getting posts from database then use order by ID desc that will show latest post on the top. if ID is auto-incremented. like

select * from posts order by ID desc

Upvotes: 0

Related Questions