В чем разница между home.php и index.php?


16

Если я создаю файл home.php, кажется, что WP будет использовать его вместо index.php, поэтому index.php никогда не используется?

Каковы различия между этими двумя файлами шаблонов (расположены в папке темы)? Они оба ведут себя одинаково, единственное различие заключается в приоритете home.php?

Ответы:


18
  • index.php универсальный шаблон, это то, что будет использовать любая страница (домашняя страница, архив, отдельное сообщение и т. д.), если для него нет другого шаблона.

  • home.phpшаблон, используемый для главной страницы (в is_home()состоянии)

Посмотрите Иерархию Шаблонов для подробной схемы того, как применяются шаблоны.


2

home.phpэто то, что ваш сайт будет использовать для любой страницы, которую вы установили, как "Страницы сообщений" под опциями чтения в wp-admin. Если вы установите статическую страницу на первую страницу, вы будете использовать ее, front-page.phpесли хотите, чтобы она была специально стилизована.


0

Имейте в виду, что использование home.php вместо index.php в качестве главной страницы запретит обычную страницу публикаций из всех категорий в вашем блоге. Другими словами, нет простого способа добраться до index.php, если вы используете home.php.


Вы можете это объяснить? Обычно вы можете получить все категории в порядке home.php. Шаблон будет выбран через много времени после того, как был сделан запрос в БД.
— fuxia

Да, но если вы попытаетесь реализовать структуру сайта следующим образом: 1. Главная страница -> home.php / 2. Новости -> index.php / 3. Опубликовать категорию 1 -> category.php ... тогда нет способа показывать сообщения из всех категорий (роль, которую выполняет index.php), за исключением создания статической страницы, отдельного шаблона страницы для нее и получения сообщения с помощью отдельного запроса в этом шаблоне. Если мы попытаемся сделать ссылку непосредственно на index.php, он, очевидно, перенаправит нас на страницу, созданную home.php, потому что теперь она является главной страницей блога.
— конечно же,

home.phpэто шаблон для последних сообщений в блоге из всех категорий.
— фуксия

Что за index.php тогда?
— конечно же,

Это запасной файл на случай, если отсутствует какой-либо другой файл. Единственный файл, который не перехватывается этим резервным файлом - это comments.php.
— fuxia
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.