No tema do meu filho archive.php
, tenho o seguinte código para exibir o título das minhas páginas de arquivo:
<?php
the_archive_title( '<h1 class="page-title">', '</h1>' );
?>
Mas isso exibe meus títulos como "Categoria: Título da categoria " em vez de simplesmente o título sem a "Categoria:" anterior.
Meu primeiro instinto foi o de substituir get_the_archive_title()
a partir wp-includes/general-template
. Mas pelo que li, aparentemente não devo alterar nada do wordpress, mesmo com substituições de um tema infantil.
Então, qual é a melhor maneira de controlar a saída the_archive_title()
?
functions
child-theme
fildred13
fonte
fonte
Respostas:
Se você olhar o código-fonte de
get_the_archive_title()
, verá que há um filtro fornecido, chamadoget_the_archive_title
, através do qual você pode filtrar a saída da função.Você pode usar o seguinte para alterar a saída em uma página de categoria
fonte
Archive: Books
(ondeBooks
é um tipo de postagem personalizado). Asingle_cat_title()
função retornará apenas um título da página se o tipo for uma categoria ou tag . Você pode alterar sua resposta para incluir uma solução que funcione com todos os tipos de conteúdo?A resposta aceita funciona para remover o
Category:
prefixo dos títulos do arquivo da categoria, mas não para outros tipos de taxonomia ou postagem. Para excluir outros prefixos, há duas opções:Recrie o título para todas as variantes usadas na
get_the_archive_title()
função original :Ou simplesmente retire qualquer coisa que pareça com um prefixo de título (que pode alterar os títulos reais que contêm uma palavra seguida pelo caractere de dois pontos):
fonte
Você poderia usar
fonte
single_cat_title
usasingle_term_title
internamente, que também funciona em taxonomias. Verifique se o seu tema não possui um dos seguintes modelos definidos:taxonomy-book.php
outaxonomy.php
porque eles têm precedênciaarchive.php
. Além disso, considere testar qualquer um dos métodos nas outras respostas. Esta resposta é bastante antiga, estava funcionando bem no momento em que a publiquei, mas não estou mais desenvolvendo para o WordPress.Outra opção é:
Substitua a marca: pelo texto que você deseja se livrar.
Vale a pena examinar a diferença entre get_the_archive_title () e the_archive_title () the_archive_title () retorna uma matriz get_the_archive_title () retorna uma string
fonte
Ben Gillbanks tem uma boa solução que lida com todos os tipos de postagens e taxonomias:
fonte
Você pode usar
post_type_archive_title()
para obter o título de um arquivo sem o texto "Arquivos:".fonte