En el tema de mi hijo archive.php
, tengo el siguiente código para mostrar el título de mis páginas de archivo:
<?php
the_archive_title( '<h1 class="page-title">', '</h1>' );
?>
Pero eso muestra mis títulos como "Categoría: Título de categoría " en lugar de simplemente el título sin la "Categoría:" antepuesta.
Mi primer impulso fue anular get_the_archive_title()
de wp-includes/general-template
. Pero por lo que he leído, aparentemente no se supone que altere las cosas centrales de WordPress, incluso con anulaciones de un tema secundario.
Entonces, ¿cuál es la mejor forma de controlar la salida de the_archive_title()
?
functions
child-theme
fildred13
fuente
fuente
Respuestas:
Si observa el código fuente de
get_the_archive_title()
, verá que se proporciona un filtro llamadoget_the_archive_title
, a través del cual puede filtrar la salida de la función.Puede usar lo siguiente para cambiar la salida en una página de categoría
fuente
Archive: Books
(dondeBooks
es un tipo de publicación personalizada). Lasingle_cat_title()
función solo devuelve un título de página si el tipo es una categoría o etiqueta . ¿Puede modificar su respuesta para incluir una solución que funcione con todos los tipos de contenido?La respuesta aceptada funciona para eliminar el
Category:
prefijo de los títulos de archivo de categoría, pero no otros tipos de taxonomía o publicación. Para excluir otros prefijos, hay dos opciones:Reconstruya el título para todas las variantes utilizadas en la
get_the_archive_title()
función original :O simplemente elimine cualquier cosa que parezca un prefijo de título (que puede alterar los títulos reales que contienen una palabra seguida del carácter de dos puntos):
fuente
Podrías usar
fuente
single_cat_title
usasingle_term_title
internamente, lo que también funciona en taxonomías. Asegúrese de que su tema no tenga una de las siguientes plantillas definidas:taxonomy-book.php
otaxonomy.php
, porque tienen prioridadarchive.php
. Además, considere probar cualquiera de los métodos en las otras respuestas. Esta respuesta es bastante antigua, estaba funcionando bien en el momento en que la publiqué, pero ya no estoy desarrollando para WordPress.Otra opción es:
Reemplazar marca: con cualquier texto del que desee deshacerse.
Vale la pena analizar la diferencia entre get_the_archive_title () y the_archive_title () the_archive_title () devuelve una matriz get_the_archive_title () devuelve una cadena
fuente
Ben Gillbanks tiene una buena solución que maneja todos los tipos de publicaciones y taxonomías:
fuente
Puede usar
post_type_archive_title()
para obtener el título de un archivo sin el texto "Archivos:".fuente