Welcome to WebmasterWorld Guest from 54.146.217.179

Forum Moderators: open

Message Too Old, No Replies

query for mysql like latest post of WP

query for mysql like latest post of WP but not displaying the latest

     
4:25 am on Oct 1, 2010 (gmt 0)

Junior Member

5+ Year Member

joined:July 27, 2010
posts: 54
votes: 0


hi, i have a query that post articles in mysql. now i want to query the latest post but not the newest article.
e.i.
post id 1 <--inserted first
post id 2 <--inserted second
post id 3 <--inserted third
-------------------------
so when i run the query it should display the ff in DESC:
------------
post id 2
------------
post id 1
------------
'coz post id 3 is the newest and they are being viewed in the same page.
(so no need to post id 3 again.)
hope someone can help :D
P.S. (i need the query)
9:30 am on Oct 1, 2010 (gmt 0)

Senior Member

WebmasterWorld Senior Member 10+ Year Member

joined:Apr 24, 2005
posts:697
votes: 0


field names to run query on ?
1:18 pm on Oct 1, 2010 (gmt 0)

Junior Member

5+ Year Member

joined:July 27, 2010
posts: 54
votes: 0


thanks for the reply, fields will be title,content,date
its like a mimic of wordpress latest post except that it doesn't show the newly inserted post.. so it will like -1 for the id to be called..
hope you'll help me. thanks!
3:41 pm on Oct 1, 2010 (gmt 0)

Moderator from US 

WebmasterWorld Administrator lifeinasia is a WebmasterWorld Top Contributor of All Time 10+ Year Member Top Contributors Of The Month

joined:Dec 10, 2005
posts:5551
votes: 24


I would start with:
SELECT title,content,date
FROM TableName
WHERE id<>(SELECT MAX(id) FROM TableName)
ORDER BY id DESC

(This returns all the rows except the most recent- I don't know how to limit it to 1 result in MySQL.)
6:21 pm on Oct 1, 2010 (gmt 0)

Senior Member

WebmasterWorld Senior Member 10+ Year Member

joined:Apr 24, 2005
posts:697
votes: 0


LIMIT 1 at the end of LifeInAsia's query
1:35 am on Oct 2, 2010 (gmt 0)

Junior Member

5+ Year Member

joined:July 27, 2010
posts: 54
votes: 0


thanks man! i've tried that before but didn't work..your's did! thanks again! :D
5:00 pm on Oct 4, 2010 (gmt 0)

Senior Member

WebmasterWorld Senior Member rocknbil is a WebmasterWorld Top Contributor of All Time 10+ Year Member

joined:Nov 28, 2004
posts:7999
votes: 0


While that works, it could potentially break if there are any mods to the database in future updates . . . you should use the inherent WP functions. Additionally min and max are evaluation functions, if you go that route you can save overhead by just doing ".. order by id desc limit 1,1" (will pull one record starting with the second record, 0 is record one.)

Though they say in the documentation to include wp_head for external pages, you only need to include wp_load to make Wordpress functions accessible externally.


<?php
include ($_SERVER['DOCUMENT_ROOT'] . "/blog/wp-load.php");
//query_posts('showposts=1&category_name=Your Category if You Want');
query_posts('showposts=2&orderby=id&order=desc');
while (have_posts()) {
the_post();
$author_id = get_the_author_meta('ID');
$fn = get_the_author_meta('first_name');
$ln = get_the_author_meta('last_name');
$image = get_avatar( $author_id, 75, null, "$fn $ln");
$date = get_the_date();
$permalink= get_permalink();
$title= get_the_title();
echo "
<div class=\"blog-posts\">
<div class=\"blog-post-thumb\">$image</div>
<h2>$title</h2> <h4 class=\"dateline\"> $date</h4> <p>";
the_content();
echo "</div>';
}


The previous is **not exactly** correct as it doesn't skip the first one, but dig around a little, it will come to you.

Query Posts [codex.wordpress.org]
3:29 am on Oct 5, 2010 (gmt 0)

Junior Member

5+ Year Member

joined:July 27, 2010
posts: 54
votes: 0


thanks man! although im using this on a small site, i think i will just update the code. And im not using WP, its my own cms in php. anyways, i'll try to know more about this. thanks for the code though. cheers!