よくサイト構造が理解できてないので間違っていたらもうしわけないのですが、
HOME(固定ページ)
|____ 固定ページ01
|____ 固定ページ02
|____ 固定ページ03
|____ 固定ページ04
|____ ブログ投稿一覧+固定ページ05 を両方表示
ってことでしょうか??
で、「ブログ投稿一覧+固定ページ05 を両方表示」ができないってことでいいですかね?
つまり、
■固定ページ05タイトル■
ここは固定ページ05の入力内容を表示。ここは固定ページ05の入力内容を表示。ここは固定ページ05の入力内容を表示。ここは固定ページ05の入力内容を表示。ここは固定ページ05の入力内容を表示。ここは固定05ページの入力内容を表示。
■ブログ■
2011-09-01 ブログタイトル
ブログ本文。ブログ本文。ブログ本文。ブログ本文。ブログ本文。
ブログ本文。ブログ本文。ブログ本文。ブログ本文。ブログ本文。
——
2011-08-31 ブログタイトル
ブログ本文。ブログ本文。ブログ本文。ブログ本文。ブログ本文。
ブログ本文。ブログ本文。ブログ本文。ブログ本文。ブログ本文。
以下略
↑こうしたいってことでしょうか?
ブログ投稿一覧+固定ページ内容 を両方表示する場合、
ループが2つになります。
やり方はいろいろあると思いますが、私なら固定ページテンプレートを新しく作る方法をとりますね。
やりたいことが間違っているといけないので、↑を確認していただいて、実装方法はそれからかきます。
GTK323さん、こんにちは
「ブログページ」とおっしゃられているのは、[設定] > [表示設定] > [フロントページの表示]で設定される「投稿ページ」の事を指しているという理解でよいでしょうか。
これを踏まえて、投稿ページに最新の投稿と合わせて、投稿ページの入力欄に入力したものを表示したいという前提で回答させていただきます。
テンプレートタグでは、直接投稿ページの入力内容を表示することはできないため、独自に取得してやらなければなりません。
1つの記事を取得するには、get_post を使いますが、投稿ページのIDをパラメータとして指定する必要があります。
投稿ページのIDを取得するには、get_option( 'page_for_posts' );
を使います。
投稿ページが取得できたら、setup_postdataをかけておきましょう。
ご回答ありがとうございます。基本的にphpの理論なども付け焼刃的に並行して勉強しながらやってますので、知識・理解不足で困っております。。。
>mypacecreatorさん
説明が分かりにくく申し訳ないです。
サイト構造は、まさにおっしゃる通りです。固定ページ05の中に、ブログ投稿と、ページそのものの投稿を同時に表示したいということです。
固定ページテンプレートを別に用意する方法も考えましたが、その固定ページの記入欄の本文が表示された状態で、同時にブログ投稿記事も呼び出すタグも使うことになり、結局うまくいきませんでした。
偶然にもHPを拝見させていただき、トップページに新着のブログ投稿の一覧を表示することはできたので、あとはここにcontentである投稿内容を合わせて表示させればいい、というのは分かるのですが、そこから先でまた躓いてしまうのがビギナーの悲しさです・・・
>jim912さん
「ブログページ」とおっしゃられているのは、[設定] > [表示設定] > [フロントページの表示]で設定される「投稿ページ」の事を指しているという理解でよいでしょうか。
まさにそうです。いわゆるブログ本体とでもいうか、ブログ投稿記事がアップされる「投稿ページ」です。これとは別に、「フロントページ」については別の固定ページを指定しています。
教えていただいた
get_option( ‘page_for_posts’ );
ですが、これはループを考えず単独で使えるとの理解でよろしいでしょうか?
つまり、「投稿ページ」の「ページ記事本文」のほうは固定(というか単独で存在)ですので、リンクを張っておけばそのまま表示されるんですよね?
<?php
get_page_link( get_option(‘page_for_posts’) );
?>
というのを使ってみたのですが、やり方が悪いのか何も表示されませんでした。
パラメータを($page_for_posts)にしても同様で、(‘$page_for_posts’)にしてみたら、まっ白けになりました。
page_for_post ですから、「投稿ページの中の記事」に関するリンクの取得だと思うのですが・・・関数の設定方法に誤りがあればご教示くだされば幸いです。
どうぞよろしくお願いいたします。
たびたびすみません、もう少し具体的な記述を加えますと、
HOME(固定ページ)
|____ 固定ページ01
|____ 固定ページ02
|____ 固定ページ03
|____ 固定ページ04
|____ ブログ投稿一覧+固定ページ05 を両方表示
この中の固定ページ05には、ブログ投稿(タイトル+本文)を数件表示します。
さらにこのページに、カスタムヘッダーの機能を使って「今週の1枚」みたいに画像を表示させます。
その画像の説明を、固定ページ05の記事入力欄に書き込んで、画像の下にでも表示させたい、というのが基本構想になっております。
GTK323さん
こんな感じです。
<?php
$page_for_posts = get_option( 'page_for_posts' );
if ( $page_for_posts ) {
$post = get_post( $page_for_posts );
setup_postdata( $post );
the_content( $post );
}
?>
jim912さん
できました!
本当は自分で考えないといけないんですが、パラメーターと$の入れ方とか分からず、コピペさせていただきました。ありがとうございました。
‘page_for_posts’ で指定して、$page_for_posts で実数値もしくは文章を出してくるということですね。
つぎは、サムネイル画像の表示にむけて奮闘したいと思います。
あらためて感謝申しあげます。