web-dev-qa-db-ja.com

最新の投稿のIDを取得する

これを行う最善の方法を探し求めてきました。

特定のpost_typeの最新の投稿のIDを取得したい。

どのようにしてこれを最も安い方法で実行することができますか(最も安いとは、最小限のクエリを使用し、ループやポスト巻き戻しを使用しないことを意味します)。

確かに簡単な方法はありますか?

6
Niels
$latest_cpt = get_posts("post_type=yourcpt&numberposts=1");
echo $latest_cpt[0]->ID

上記よりも安価な唯一の方法は、1つの投稿と列IDのみを返すように独自のSQLクエリを書くことです。

16
Brady

より純粋なSQLの方法:

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;
}
1
Jahmic