サポート » 使い方全般 » 最新記事を一つだけトップページで表示したい

  • 解決済 kicksui

    (@kicksui)


    Gentokiテーマを使って毎日の写真をアップするアルバムサイトを作っています。今はsingle.phpのコードをindex.phpにそのままコピーして、管理画面の表示設定を1ページに表示する投稿を1件にしているのですが、アーカイブを見たりするときにやはり1件しか表示されません。
    http://www.surfingshonan.com/
    管理画面の表示設定を普通に使える状態で、トップページのみ投稿記事を最新の一つだけ表示できるようにできないものでしょうか?

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • single.phpのコードをindex.phpにそのままコピーして

    このやり方ではなく、single.phpのコードをis_home()などで分岐させてindex.phpに追記する方がすっきりするのではないでしょうか。
    single.phpのコードをindex.phpにそのままコピーしてしまうと全ての投稿がsingle.phpで表示されている状態になってしまうわけですので、表示の方法をTOPページの場合とそうでない場合で分岐させて同居させます。

    index.phpの

    <?php
    get_header();
    ?>

    の下に

    <?php
     if (is_home()) query_posts('showposts=1');
     ?>

    と書いてやればいいかと。

    トピック投稿者 kicksui

    (@kicksui)

    丁寧な説明ありがとうございます。
    早速コード追加して試してみたのですが、確かに最新の投稿の一覧の一つだけ表示されるようになるのですが、single.phpのような表示にはなりません。

    トップページの表示は今のままでいいんです、ただアーカイブを見たときに管理パネルの表示設定でのページの表示数が反映されるようにしたいわけです。(今は表示設定を1に設定してあるのでアーカイブを見ると一つだけ表示されていますが、その表示を管理パネルの表示設定に依存できるようにしたいのです。)私の説明が悪いのかお手数をかけてしまいました、良い方法を知っている方がおられましたら助言お願いします。

    > kicksui さん

    mick_ltc さんの提示された方法で動作するはずですよ。 mick_ltc さんのコードを追加し動作確認した際、管理ページの投稿の表示数を 1 件に設定したままテストされたのではありませんか?
    まずは管理ページの投稿の表示数を、 10 件などに変更して動作確認してみてください。

    それから

    single.phpのような表示にはなりません。

    の意味するところは、コメント欄もトップページに表示させたいということでしょうか?

    トピック投稿者 kicksui

    (@kicksui)

    >mizubeさん

    mick_ltc さんの提示された方法で動作するはずですよ。 mick_ltc さんのコードを追加し動作確認した際、管理ページの投稿の表示数を 1 件に設定したままテストされたのではありませんか?
    まずは管理ページの投稿の表示数を、 10 件などに変更して動作確認してみてください。

    やってみたんですね、そしたら投稿の一つが確かに表示されるのですが、Gentokiテーマでは一覧のような表示の一つだけ見えるわけなんです、そこをクリックすると写真の一覧が見えるsingle.phpに飛ぶのですが、index.phpにアクセスしてもsingle.phpのような表示にはならないという意味で、アクションが一つ多いのです。

    コメント欄もトップページに表示させたいということでしょうか?

    トップページにはコメントがでなくてもかまいません。

    ええと、すみません。実現したいことの内容をこちらが把握できているか確認です。

    トップページに表示するのは最新の投稿 1 件のみで、かつその記事はシングルページと同じで、アップロードした写真がすべて表示される形式にしたい、という意味だと解釈してましたが、それで合ってますでしょうか? 違うとすれば以下は読み飛ばしてください。

    おそらく何も手を入れていない状態 (テーマ入手時の状態) の index.php に

    if (is_home()) query_posts('showposts=1');

    を追加されたのでは? mick_ltc さんの回答は、 single.phpのコードをindex.phpにそのままコピーして ある状態の index.php に対してのもののはずです。

    1. メインインデックスページに最新記事を一つだけで表示し、
    2. 月別アーカイブにおいて
    1. single.phpのようなデザインのまま、
    2. 管理パネルでの『設定>表示設定>1ページに表示する投稿数』を反映させたい。

    ということでしょうか?

    もしそうであるならば、
    この段階だと1と2-2はクリアしていて2-1が問題になっているように思われます。
    2-1についてはarchive.phpをsingle.phpのように編集すれば可能だと思われます。

    勘違いしていたらすみません。

    トピック投稿者 kicksui

    (@kicksui)

    >mizubeさん

    トップページに表示するのは最新の投稿 1 件のみで、かつその記事はシングルページと同じで、アップロードした写真がすべて表示される形式にしたい、という意味だと解釈してましたが、それで合ってますでしょうか?

    その通りです。

    おそらく何も手を入れていない状態 (テーマ入手時の状態) の index.php に

    if (is_home()) query_posts(‘showposts=1’);

    を追加されたのでは?

    たしかにそのようにしてしまいました。

    mick_ltc さんの回答は、 single.phpのコードをindex.phpにそのままコピーして ある状態の index.php に対してのもののはずです。

    ご指摘のようにsingle.phpのコードをそのままindex.phpに移した状態のソースに

    if (is_home()) query_posts(‘showposts=1’);

    を書き加えたところ私のやりたいことが実現できました。
    ご助言本当にありがとうございます。とても助かりました。

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • トピック「最新記事を一つだけトップページで表示したい」には新たに返信することはできません。