Suporte » Desenvolvendo com WordPress » Exibir um layout diferente para determinada Categoria no Archive.php

  • josephcardoso

    (@josephcardoso)


    Gostaria de montar um theme com um layout diferente para o loop do archive.php em uma determinada categoria.

    Exemplo:
    Em uma categoria de vídeos, exibir um layout diferente das demais categorias, para diferenciar.

    Tipo, normalmente usa-se no archive.php com um layout padrão para o loop em todas as categorias, ví um site em wordpress desse jeito que estou descrevendo. Gostara de fazer algo semelhante.

    Não tenho conhecimento avançado para isso, mas sei ler bem os códigos…

Visualizando 5 respostas - 1 até 5 (de um total de 5)
  • Na verdade o correto seria usar o arquivo category.php para as categorias. o archive.php é mais genérico.

    Você precisa dar uma olhada melhor no Template Hierarchy: http://codex.wordpress.org/images/9/96/wp-template-hierarchy.jpg

    Se você tem uma categoria chamada frutas. Você criar o arquivo category-frutas.php ou category-{id_cat_frutas}.php. Esse arquivo será carregado automaticamente pelo WP e você pode estilizar o loop dos posts dessa categoria da forma como você quiser.

    Então você poderia trabalhar com o category.php para ser o padrão e crias os arquivos específicos: category-{slug}.php ou category-{id}.php

    PS: Veja o link que passei.

    rickserrat

    (@rickserrat)

    Fala ae Josephcardoso, você pode da uma lida em https://codex.wordpress.org/Function_Reference/in_category

    A função in_category pode ajudar você a fazer esse trabalho.

    Não recomendo usar in_category() pois você teria em um arquivo algo desse tipo:

    if (in_category('...') ) {
        //Layout 1
      } else if ( in_category('....') ) {
        //Layout 2
      }

    É melhor usar a própria hierarquia de templates.

    Criador do tópico josephcardoso

    (@josephcardoso)

    NIcholas, então eu posso copiar o archive.php e trocar o nome por categore(nome dela).php?

    Já usei in-category, é legal porém não serve para o que quero. o loop continua, ou se colocar outro loop vai ficar duplicado

    O padrão é category-{slug}.php

    O Slug é o nome da categoria “normalizado” ex: Gestão de Pessoas slug: gestao-de-pessoas e ficaria category-gestao-de-pessoas.php

    E sim você pode copiar seu archive.php e colar nesse novo category e modificar a vontade.

Visualizando 5 respostas - 1 até 5 (de um total de 5)
  • O tópico ‘Exibir um layout diferente para determinada Categoria no Archive.php’ está fechado para novas respostas.