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

16

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

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

Alex
источник

Ответы:

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

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

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

Rarst
источник
2

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

Дэн Гейл
источник
0

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

certainlyakey
источник
Вы можете это объяснить? Обычно вы можете получить все категории в порядке 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