サポート » 使い方全般 » 固定ページ投稿ページの内容をそれぞれ個別に出力したい

  • 解決済 shinichi_ntrue

    (@shinichi_ntrue)


    <?php echo get_the_title(10); ?>は出力されましたが
    <?php echo get_the_content(10); ?>は出力されませんでした。

    固定ページをフロントページに設定し
    フロントページのテンプレートを新規作成したsample.phpを使っています。

    sample.phpに投稿ページや固定ページをそれぞれひとつずつ出力したいです。
    出力されたなかったのは本文です。
    あとアイキャッチも同じように出力したいです。

    お手数ですが、ご教授いただければ幸いです。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • CG

    (@du-bist-der-lenz)

    get_the_content() はフィルター ‘the_content’ を適用せずにコンテンツを返します。すなわち、get_the_content() は動画の自動埋め込みや、ショートコードの展開などを実行しません。

    本文内容に要因はないのですね。

    get_the_content() はフィルター ‘the_content’ を適用せずにコンテンツを返します。すなわち、get_the_content() は動画の自動埋め込みや、ショートコードの展開などを実行しません。

    本文内容に要因はないのですね。

    何ですか?この無意味な回答は。

    関数リファレンス/get the content

    ここを見れば分かりますが

    この関数はループ内で使用しなければなりません。

    と書いてあります。少しは調べましょう。
    尚、the_contentも同じです。

    なので回りくどいですがget_postなどを使ってIDを指定して取得してください。

    <?php
    $page = get_post( 10 );
    echo $page->post_content;
    ?>

    こんにちは

    ループ外から、特定の投稿のタイトルや、本文を取得したい場合 以下のようにしても、Okです

    
    $post_id = 36548;
    echo get_post_field( 'post_title', $post_id );
    echo get_post_field( 'post_content', $post_id );
    echo get_the_post_thumbnail($post_id);
    

    ただし、フィルターが通らないので、youtubeのurlなんかを貼り付けた投稿は、普通の投稿のようには表示できないので、

    
    echo apply_filters('the_content', get_post_field( 'post_content', $post_id ));
    

    フィルターが通るようにするといいかも、

    CG さん、manboさん、nobitaさん
    回答ありがとうございます。

    それぞれ試してみましたが出力されませんでした。
    もう少し調べて色々試してみます。

    テンプレート設定は確実に反映できてますか?
    例えばfront-page.phpがあったりするといくらsample.phpをフロントページに設定したとしても、見かけは設定できているように見えて実際はfront-page.phpを読み込んでsample.phpを使ってないパターンもあります。

    テーマのテンプレートファイル

    front-page.php テンプレートファイルがあれば、WordPrss はサイトのフロントページにいつもそれを使います。front-page.php がなければ、「設定 > 表示設定 -> フロントページの表示」のユーザー設定にもとづいて、WordPress が使うテンプレートファイルを決めます。

    あ、

    <?php echo get_the_title(10); ?>は出力されましたが

    って書いてましたね…

    • この返信は1 年、 8 ヶ月前に  manbo さんが編集しました。

    manboさん
    ありがとうございます。
    下記で試したら出力が確認できました。

    <?php
    $page_id = 5;
    $content = get_page($page_id);
    echo $content -> post_content;
    ?>
    <?php
    $page_id = 5;
    $content = get_page($page_id);
    echo $content -> post_title;
    ?>

    あとはアイキャッチのURLを出力も同じようにできるか試してみます。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • トピック「固定ページ投稿ページの内容をそれぞれ個別に出力したい」には新たに返信することはできません。