Php Wordpress-如何获取下一个新帖子ID
我需要在产品页面中获取下一个新帖子ID 所以我知道如何在DB中获取最后一个帖子id,但我需要知道第二个新帖子idPhp Wordpress-如何获取下一个新帖子ID,php,wordpress,wordpress-theming,Php,Wordpress,Wordpress Theming,我需要在产品页面中获取下一个新帖子ID 所以我知道如何在DB中获取最后一个帖子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];
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吗
如果您想获得第二大帖子id,请将查询更改为限制1,1,谢谢 $query=从$wpdb中选择ID->按ID发布订单描述限制1,1 试试这个:
global $wpdb;
$result = $wpdb->get_results( "SHOW TABLE STATUS LIKE 'wp_posts'", ARRAY_A );
echo( $result[0]['Auto_increment']);
试试这个
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;
}
注意:在post_type='post'和LIMIT 1,1处,您可以根据您的post type将其更改为post_type='product'。您的意思是尚未添加产品的post id吗?是的,在新产品页面中。我需要让他的ID产品不创建Yet仅供参考,因为它会在postId中添加3而不是1,因为wordpress在发布新帖子时也使用相同的表创建其他记录类型。其他的记录可能是1511和1511。哦,你想获得还没有创建的id,我想你需要获得第二大id。试试这个$next\u post=get\u next\u post$post\u id=$next\u post->id;代码返回已添加到数据库中的产品的id。从评论中我们看到,Mantas需要一个产品的id,但该id不在db中。@IvnH你是对的,但我相信wordpress已经自动保存到db中了,即使在创建帖子时还没有创建帖子,只是帖子类型是另一种类型。需要了解wordpress使用的post_类型。是的,不工作,我将post_类型更改为产品,但相同,不显示下一个id。@Mantas'MG'G。我将建议一些调试方法。1.当它不工作时,它显示什么ID?2.打开phpMyAdmin并查看表中有哪些记录以及您希望看到什么。它将开始变得更有意义: