サポート » 使い方全般 » twenty elevenでのトップページに固定ページと新着表示とテンプレートについ

  • 解決済 kan2000

    (@kan2000)


    新しいテーマを使って制作中ですが、twentytenと大分中身が変わっているようで
    検索してもなかなか欲しい情報が見つかりません。

    初心者質問で申し訳ないですが、以下の件を教えてください。
    ・twenty elevenでのトップページに固定ページと新着(投稿)表示させる方法
    ・twenty elevenのテンプレートファイルの作り方

    まずトップページとなるhome(スラッグ名)で固定ページを作りました。

    設定>表示設定で固定ページのフロントページをhomeにして、
    投稿ページをお知らせという固定ページ(空)を設定しました。

    ここまではよくある回答であるのですが、それでは投稿が
    トップページに反映されません。
    そもそもそのやり方ではトップページの固定ページに投稿を表示できないのですか?

    トップページのテンプレートをsidebar templateにしているのですが、
    それが原因かと、デフォルトに直したり、新たにテンプレート作成したり
    試しましたが何も変わりません。

    そもそもデフォルトテンプレートだとサイドバーが表示されないのですが、
    これはどのテンプレートを参照しているのでしょうか?
    index.php?固定ページなのでpage.php?
    index.phpなら<?php get_sidebar(); ?>があるので表示されるはずですが、
    それをpage.phpに追加して子テーマで保存してもサイドバーが表示されません。

    投稿を表示できる固定ページでサイドバーも表示できるトップページ用の
    テンプレートを新たに作る時はどのファイルを元に作ればいいですか?
    またそれをデフォルトテンプレートとして設定するには名前を何にすればいいですか?

    スラッグを含んだテンプレートファイルの名前の付け方もtwentytenと違うような
    ことを書いていましたが、まだよく理解できません。

    twentytenの固定ページはpage-スラッグ名.phpでその固定ページだけ適用される。
    twentyelevenの固定ページはスラッグ名-page.phpでその固定ページだけ適用される。
    これで間違いないのでしょうか?

    あとトップページだけタイトルを非表示にしたいのですが、それも教えてください。
    単にindex.phpを編集して<h1 class=”entry-title”>の箇所を削除しても反映されないので、
    トップページに使ってるデフォルトテンプレートはindex.phpではないのは分かりましたが、
    どのファイルを触ればトップページだけタイトルを非表示にできるか分かりません。

    よろしくお願いします。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • うお。いっぺんに質問してもいっぺんに返せないので、一つずつ解決しましょうか。
    えーっと、まとめると…

    1.TOPページに固定ページを表示して、その中(一部?)に新着の投稿(タイトルだけ?本文も?)を表示したい。
    2.固定ページでサイドバーを表示したい。(投稿ページじゃないですよね?)
    3.トップページで表示する固定ページのタイトルを非表示にしたい。

    この3つであってますか?(1と2の疑問部分はそれぞれ回答してくださいね)

    トピック投稿者 kan2000

    (@kan2000)

    すみません。いっぺんにまとめて質問してしまいましたが、どのテンプレートファイルがどのページに反映されるのか理解できず。。。

    1.TOPページに固定ページを表示して、その中(一部?)に新着の投稿(タイトルだけ?本文も?)を表示したい。

    その通りです。
    新着の投稿はタイトルだけの場合は以下サイトのようにすれば成功しました。
    http://bowz.info/?p=1869

    page.phpにコードを追加して子テーマで保存しました。
    これがデフォルトテーマの設定で反映されましたので、固定ページのデフォルトテーマはpage.phpなんですね。
    これのテーマファイルをhomeだけに適用したい場合は、page-hone.phpという名前にすればhomeだけに反映されました。page-スラッグ名.phpにすれば良いと分かりました。

    ですので、トップページの新着の投稿はタイトルだけでなく本文の抜粋まで表示する方法を教えてください。5件表示とか表示件数も設定できて、できるならアイキャッチのサムネイル表示も欲しいです。

    2.固定ページでサイドバーを表示したい。(投稿ページじゃないですよね?)

    これは固定ページも投稿ページもすべてのページにサイドバーを表示したいです。
    下記のサイトでやり方があったので、これで解決しました。
    http://flyorbjp.com/web-consulting/1376

    ですので、1と3の解決方法を教えてください。
    よろしくお願いします。

    ああ、そのやり方でもいいんですけどね。
    テーマのfunctions.phpにショートコードを作成して固定ページに直接記述する方が楽です。テーマファイル修正する必要もありませんから。

    参考
    http://1bit.mobi/20111216102403.html

    トップページだけ○○したい場合は、条件分岐タグを使う方がいいですかね。
    http://wpdocs.sourceforge.jp/%E6%9D%A1%E4%BB%B6%E5%88%86%E5%B2%90%E3%82%BF%E3%82%B0#.E3.83.95.E3.83.AD.E3.83.B3.E3.83.88.E3.83.9A.E3.83.BC.E3.82.B8
    まあ、この場合テーマファイルを修正するしかありませんが。

    単にindex.phpを編集して<h1 class=”entry-title”>の箇所を削除しても反映されないので

    編集しているファイルが違うのですよ。上でどのファイルが適用されているか確認できたみたいなのでこれは解決できますよね!

    テーマファイルを修正せずにトップページだけタイトルを消したい(コード的には存在するけどCSSで見えなくする)ことは可能だと思います。
    bodyタグに自動でclassが付いているのでトップページの時だけについているclassを使ってdisplay:none;にするだけです。

    まあ、どちらの方法でも良いと思います。

    トピック投稿者 kan2000

    (@kan2000)

    早々にレスありがとうございます。

    固定ページに最新投稿を見せる方法はfunction.phpを使う方法もあるんですね。
    分岐命令はまだ使ったことないので、また時間ある時にでも試してみます。
    とりあえずはテーマファイルをいじる方法がうまくいったので、それでやってみます。
    固定ページごとにレイアウト変えたりもしたいので、どちらにしてもテーマファイルを
    触ることになりますしね。

    あと、トップページだけタイトルを非表示にする方法もスタイルシートに追加で
    うまくいきました。
    トップページのbodyタグにhomeというクラス設定があったので、それのタイトル設定を
    非表示にしました。

    .home .entry-title {
    display: none;
    }

    ありがとうございました。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「twenty elevenでのトップページに固定ページと新着表示とテンプレートについ」には新たに返信することはできません。