我需要在产品页面中获取下一个新帖子ID。
所以我知道如何在数据库中获取上一个帖子ID,但是我需要知道第二个新帖子ID。
function GetLastPostId()
{
global $wpdb;
$query = "SELECT ID FROM $wpdb->posts ORDER BY ID DESC LIMIT 0,1";
$result = $wpdb->get_results($query);
$row = $result[0];
$id = $row->ID;
return $id;
}
例如,问题是,知道最后一个帖子ID是1510,但随后我创建了产品-帖子ID是因为1513而不是1511(加上3而不是1)。然后我删除了一些页面/产品,它添加了2个而不是3个,有时还添加了1个
那么是否有可能以某种方式获取下一个帖子ID?
谢谢
答案 0 :(得分:1)
尝试一下:
global $wpdb;
$result = $wpdb->get_results( "SHOW TABLE STATUS LIKE 'wp_posts'", ARRAY_A );
echo( $result[0]['Auto_increment']);
答案 1 :(得分:0)
如果您想获得第二大的帖子ID,请将您的查询更改为限制1,1
$ query =“从$ wpdb->中选择ID,然后按ID DESC LIMIT 1,1发布订单”;
答案 2 :(得分:0)
尝试
function SecondLastPostId()
{
global $wpdb;
$query = "SELECT ID FROM $wpdb->posts WHERE post_type = 'post' ORDER BY ID DESC LIMIT 1,1";
$result = $wpdb->get_results($query);
$row = $result[0];
$id = $row->ID;
return $id;
}
注意WHERE post_type = 'post'
和LIMIT 1,1
,您可以根据您的帖子类型将其更改为post_type = 'product'