web-dev-qa-db-ja.com

フロントページのID

選択したフロントページのIDを取得するのが好きです。私のページはそのページのテンプレートを使います。 get_option('page_on_front')について読んだことがありますが、これはうまくいきませんでした。

このIDを取得する機能はありますか?

1
Rinkyy

これでうまくいくはずです。

global $wp_query;
$post = $wp_query->get_queried_object();
$post->ID;

これにより、現在表示している各ページのIDがわかります。

get_option( 'page_on_front' )はうまくいったはずです。

1
Digamber

Dashboard> 'Pages'の順に選択してから、フロントページのテンプレートを使用しているページに移動してタイトルの上に移動すると、画面の左下に次のような一連の情報が表示されます。

http://yourdomain.com/wp-admin/post.php?post=724&action=edit

Post = 724、その部分はそのページのIDになります。

あるいはプログラム的にこの関数を使い、フロントページテンプレートを使ってこのページのスラッグを渡すことができます。

    function royal_get_id($page_slug) {

    $page = get_page_by_path($page_slug);

    if ($page) {

        return $page->ID;
    } else {

        return null;
    }
}

$value = royal_get_id('your-homepage-slug');
echo $value;
0
Matt Royal

それであなたがしていることは正しいです、あなたがする必要があるように使うためにただそれを変数に格納しなさい。

また、ダッシュボードの[設定]> [閲覧]でフロントページとして設定していることを確認してください。設定しないと、この値は空になります。

$front_id = get_option('page_on_front');
    echo $front_id;
0
Matt Royal