Cómo eliminar la etiqueta "Archivo:" del título del archivo

6 nov 2016, 19:47:24
Vistas: 41.1K
Votos: 9

Necesito eliminar la etiqueta "Archivo:" del título de la página de archivo. Probé esta línea sin resultados:

<?php the_archive_title('<h2>','</h2>', false);?>

El título sigue mostrando la etiqueta "Archivo:" antes del título. ¿Cómo puedo eliminarla?

Este es el código completo de mi página:

<?php get_header('inner');?>

    <div class="row large-uncollapse">
        <div class="columns small-12 medium-12 large-12">
            <div class="breadcrumbs" typeof="BreadcrumbList" vocab="http://schema.org/">

              <?php if(function_exists('bcn_display'))
              {
                echo '<b>Estás en:</b>';
                bcn_display();
              }?>
            </div>

        </div>
    </div>

    <div class="row large-uncollapse">
        <div class="columns small-12 medium-12 large-12 large-centered text-center pad-vr-2">
          <?php echo get_the_archive_title();?>
        </div>
    </div>

<?php if(is_singular('rassegna-stampa')): ?>

    <div id="rassegna-stampa">
        <div class="row large-collapse">

          <?php
          if ( have_posts() ) :
            while ( have_posts() ) : the_post();
              echo '<div class="columns small-12 medium-6 large-4 float-left" style="margin-bottom:10px;">';
              echo '<div class="columns small-3 medium-3 large-3">';
              if(has_post_thumbnail()){
                echo the_post_thumbnail();
              }
              if( get_field('file') ) {
                echo '<a href="';
                the_field('file');
                echo '" data-featherlight="iframe" target="_blank">';
                echo '<button>';
                echo '<img src="';
                echo get_site_url();
                echo '/wp-content/uploads/2016/09/pdf.png" width="20px">';
                echo '</button>';
                echo '</a>';
              }
              if( get_field('link') ) {
                echo '<a href="';
                echo the_field('link');
                echo '" data-featherlight="iframe">';
                echo '<button>';
                echo '<img src="';
                echo get_site_url();
                echo '/wp-content/uploads/2016/09/link.png" width="20px">';
                echo '</button>';
                echo '</a>';
              }
              echo '</div>';
              echo '<div class="columns small-9 medium-9 large-9">';
              echo '<h3 style="margin:0px;">';
              echo the_title();
              echo '</h3>';
              echo '<small>';
              echo '—';
              echo the_field('testata');
              echo '</small>';
              echo '<small>';
              echo the_field('data');
              echo '</small>';
              echo '<span style="font-size:12px;">';
              the_excerpt();
              echo '</span>';
              echo '</div>';
              echo '</div>';
            endwhile;
          else :
            echo wpautop( 'Lo sentimos, no se encontraron publicaciones' );
          endif;
          ?>
        </div>
    </div>


<?php else :?>

    <div id="libri">
        <div class="row large-collapse">

          <?php
          if ( have_posts() ) :
            while ( have_posts() ) : the_post();
              echo '<div class="columns small-12 medium-6 large-4 float-left" style="margin-bottom:10px;padding-bottom: 12px; height:220px;">';
              echo '<div class="columns small-3 medium-3 large-3">';
              if(has_post_thumbnail()){
                echo the_post_thumbnail();
              }
              echo '</div>';
              echo '<div class="columns small-9 medium-9 large-9">';
              echo '<h3 style="margin:0px;">';
              echo the_title();
              echo '</h3>';
              echo '<div style="float:left;width:100%;">';
              echo '<small style="float:left;width:auto;">';
              echo the_field('anno_pubblicazione');
              echo '</small>';
              echo '<div style="float:left; line-height:15px;">';
              echo '&nbsp;—&nbsp; ';
              echo '</div>';
              echo '<small style="float:left;width:auto;">';
              echo the_field('editore');
              echo '</small>';
              echo '</div>';
              echo '<span style="font-size:12px;">';
              the_excerpt();
              echo '</span>';
              echo '</div>';
              echo '<div class="columns small-12 medium-12 large-6">';
              echo '<a href="';
              the_permalink();
              echo '">';
              echo '<button style="width:auto; padding:0.4rem; float:left; border:1px #000 solid;">';
              echo 'Leer más';
              echo '</button>';
              echo '</a>';
              echo '</div>';
              echo '<div class="columns small-12 medium-12 large-6">';
              if( get_field('link_acquisto') ):
                echo '<a href="';
                echo the_field('link_acquisto');
                echo '" style="color:#D34D3D;">';
                echo '<button style="width:auto; padding:0.4rem; float:left; border:1px #D34D3D solid;">';
                echo 'COMPRAR';
                echo '</button>';
                echo '</a>';
              endif;
              echo '</div>';
              echo '</div>';
            endwhile;
          else :
            echo wpautop( 'Lo sentimos, no se encontraron publicaciones' );
          endif;
          ?>
        </div>
    </div>

<?php endif ;?>

<?php get_footer();?>

¡Gracias!

3
Comentarios

¿Has visto https://codex.wordpress.org/Function_Reference/the_title? No estoy seguro de cómo funciona con los Archivos.

jgraup jgraup
6 nov 2016 20:22:59

Modificar el núcleo no es una buena práctica. ¡Usa un plugin o desarrolla uno!

Mehdi Mehdi
9 nov 2024 06:01:15
Todas las respuestas a la pregunta 3
7
10

Necesitas utilizar el filtro get_the_archive_title. Funciona de manera similar al filtro the_title. Más detalles sobre la función que incorpora el filtro aquí

Más información en esta pregunta eliminar etiqueta de categoría

EDITADO :

Cuando se trata de una página de archivo de tipo de entrada personalizada, podrías usar otra función para mostrar el título: post_type_archive_title() Entonces podrás enlazar el título con el filtro post_type_archive_title, pero no hay prefijo para esta función.

Así que en tu plantilla reemplaza la llamada a la función get_the_archive_title() con:

post_type_archive_title();
6 nov 2016 21:33:39
Comentarios

Gracias por la respuesta. Desafortunadamente no funciona para mí. Sigue mostrando "Archivos:". Estoy en el archivo de un tipo de entrada personalizado, ¿puede ser útil esta información?

Stefano Stefano
6 nov 2016 22:11:07

¿Alguien puede ayudar de alguna manera?

Stefano Stefano
7 nov 2016 15:35:37

Necesitas revisar tu plantilla de archivo. Actualiza tu pregunta con su contenido. Si no sabes qué página se está cargando, instala el plugin Query Monitor, te proporcionará toda la información.

Benoti Benoti
7 nov 2016 15:39:09

Gracias, acabo de editar la respuesta con el código completo.

Stefano Stefano
7 nov 2016 15:42:52

¡Echo de menos tu primer comentario! Edito mi respuesta.

Benoti Benoti
7 nov 2016 15:58:26

¡Me alegro por ti! Puedes cambiar parte del código concatenando la cadena así: echo '<img src="'. get_site_url() .'wp-content/uploads/2016/09/link.png" width="20px">';

Benoti Benoti
7 nov 2016 16:10:43

Ten en cuenta que, si el filtro post_type_archive_title no parece estar eliminando el prefijo "Archive:", podría deberse al tema o a un plugin. Debes buscar en tu código y configuraciones cualquier referencia a esta cadena de filtro.

tklodd tklodd
16 dic 2021 22:38:35
Mostrar los 2 comentarios restantes
1

También puedes eliminar palabras innecesarias de cualquier título estándar:

add_filter( 'get_the_archive_title', function ($title) {
  if ( is_category() ) {
    $title = single_cat_title( '', false );
  } elseif ( is_tag() ) {
    $title = single_tag_title( '', false );
  } elseif ( is_author() ) {
    $title = '<span class="vcard">' . get_the_author() . '</span>' ;
  } elseif ( is_tax() ) { //para tipos de contenido personalizados
    $title = sprintf( __( '%1$s' ), single_term_title( '', false ) );
  } elseif (is_post_type_archive()) {
    $title = post_type_archive_title( '', false );
  }
  return $title;
});
5 dic 2020 22:05:30
Comentarios

¿Robaste esto de: https://wordpress.stackexchange.com/a/179590/152624

Jesse Nickles Jesse Nickles
19 feb 2024 10:11:57
0

Si observas la función get_the_archive_title(), el prefijo ahora (desde WP 5.5.0) está envuelto en su propio filtro (get_the_archive_title_prefix):

$prefix = apply_filters( 'get_the_archive_title_prefix', $prefix );
if ( $prefix ) {
    $title = sprintf(
        /* translators: 1: Title prefix. 2: Title. */
        _x( '%1$s %2$s', 'archive title' ),
        $prefix,
        '<span>' . $title . '</span>'
    );
}

Entonces podrías usar el filtro para devolver una cadena vacía (o lo que desees) para sobrescribir el texto 'Archivo:':

add_filter( 'get_the_archive_title_prefix', '__return_empty_string');

o

add_filter( 'get_the_archive_title_prefix', function($prefix) {
    /*$prefix está disponible para procesamiento también*/
    return __('tu prefijo personalizado: ', 'theme-text-domain');
});
5 ago 2022 18:26:58