web-dev-qa-db-ja.com

フロントページの指定されたテンプレートを無視するWordpress。どうして?

私はカスタムCSSでRootsテーマを使っています。

私はブログのページとしてのページ「ブログ」のフロントページとしてのページ「ホーム」を使用しています(WP読書設定で)

フロントページの "Home"を "full-width"のテンプレートを使用するように設定しようとしていますが、代わりにWordpressはこれを無視して "フロントページ"のテンプレートを使用します。

これはフロントページでのみ発生します。他のページでも「全角」テンプレートを使用するように設定できます。

なぜこれが起こっているのか、そしてどうすればこれを解決できるのかについてのアイデアはありますか?

これが役に立つなら、私はもう少し情報を投稿することができます。何を教えてください。ありがとう。

1
baritoneuk

これは仕様によるものです。なぜならwp-includes/template-loader.phpを調べてください。

front-page.phpを削除すると、ページテンプレートにフォールバックします。

2
TheDeadMedic

それは仕様によるものです。 テンプレート階層 を参照してください。サイトのフロントページは特別な場合で、次の 規則があります

  1. front-page.php - [設定] - > [閲覧]の[フロントページに表示]セクションで設定した最新の投稿または静的ページの両方に使用されます。
  2. ページ表示規則 - 設定 - >閲覧のフロントページ表示部でフロントページを設定した場合
  3. ホームページの表示規則 - [設定] - > [閲覧]の[フロントページ表示]セクションに[投稿]ページが設定されている場合

それは言います、基本的に:

  1. front-page.phpテンプレートファイルが存在する場合はそれを使用
  2. そうでなく、フロントページが静的ページを表示するように設定されている場合は、静的ページルールを使用
  3. そうでなく、フロントページがブログ投稿インデックスを表示するように設定されている場合は、home.phpを使用します。
  4. そうでない場合は、index.phpを使用してください。

そのため、テーマにfront-page.phpが含まれている場合、front-page.phpテンプレートファイルは常にあなたのサイトフロントページで使用されます。フロントページを表示するためにどのカスタムページテンプレートを割り当てるかは関係ありません)。

0
Chip Bennett