A lógica da primeira página é um dos recursos mais confusos do WordPress e é excepcionalmente difícil de explicar e resumir. Como mencionado no comentário, quando voltei, eu queimei uma quantidade profana de tempo para montar minha folha de dicas de lógica da primeira página .
Mas como esse é um tópico popular, deixe-me tentar responder a perguntas muito específicas que você tinha.
Qual é a diferença entre the home.phpe index.php?
home.phpé um modelo para o índice de postagens (arquivo morto do tipo de postagem nativa, que é um caso especial no WP). O WP tentará procurar no índice de postagens, sejam elas exibidas na raiz do site ou na página de postagens dedicada.
index.phpé um modelo abrangente. São as escolhas finais em todos os ramos da hierarquia de modelos e serão escolhidas quando nada mais couber, tanto para arquivos como para visualizações únicas.
Somente o índice de postagens pode usar home.php, mas todos os outros contextos podem e irão usar index.php.
Qual é a condição ideal para usar um home.phpque umindex.php
Você usa home.phppara personalizar o índice de postagens.
Você usa index.phppara fornecer o modelo mais genérico no seu tema, adequado para exibição de qualquer coisa.
Alguns temas optam por ficar vazios index.phpe garantem que eles tenham modelos mais específicos para todos os casos possíveis, para que ele nunca precise ser usado.
Qual é a condição ideal para usar um front-page.php?
front-page.php é usado para o índice de postagens na página inicial raiz ou estática, se ativado.
É um modelo de alta prioridade, portanto, se o tema o incluir, você não poderá selecionar um modelo arbitrário para a primeira página estática. Por esse motivo, quase nunca é incluído em temas divulgados publicamente (o que é correto).
O melhor uso para isso é em projetos privados, pois é mais fácil de configurar do que o modelo de página.
Quando estou usando um front-page.php, que tarefa específica um index.phpestá fazendo por mim?
index.phpainda é um modelo abrangente para todos os outros casos.
Se você usar a primeira página estática (à qual front-page.phpse aplicará), sua página de postagens tentará usar home.phpe então index.php.