Come rimuovere l'etichetta "Archivio:" dal titolo dell'archivio

6 nov 2016, 19:47:24
Visualizzazioni: 41.1K
Voti: 9

Ho bisogno di rimuovere l'etichetta "Archivio:" dal titolo della pagina di archivio. Ho provato questa stringa senza risultati:

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

Il titolo continua a mostrare l'etichetta "Archivio:" prima del titolo. Come posso eliminarla?

Questo è il codice completo della mia pagina:

<?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>Sei in:</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( 'Spiacenti, nessun post trovato' );
          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 'Leggi tutto';
              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 'COMPRA';
                echo '</button>';
                echo '</a>';
              endif;
              echo '</div>';
              echo '</div>';
            endwhile;
          else :
            echo wpautop( 'Spiacenti, nessun post trovato' );
          endif;
          ?>
        </div>
    </div>

<?php endif ;?>

<?php get_footer();?>

Grazie!

3
Commenti

Hai guardato https://codex.wordpress.org/Function_Reference/the_title non sono sicuro di come funzioni con gli Archivi.

jgraup jgraup
6 nov 2016 20:22:59

Modificare il core non è una buona pratica. Usa un plugin, o sviluppane uno!

Mehdi Mehdi
9 nov 2024 06:01:15
Tutte le risposte alla domanda 3
7
10

Devi utilizzare il filtro get_the_archive_title. Funziona come il filtro the_title. Maggiori dettagli sulla funzione che incorpora il filtro qui

Per maggiori informazioni su questa domanda rimuovi il tag categoria

MODIFICA :

Quando si tratta di una pagina di archivio di un custom post type, potresti utilizzare un'altra funzione per stampare il titolo: post_type_archive_title() In questo modo potrai agganciarti al titolo con il filtro post_type_archive_title, ma non c'è un prefisso per questa funzione.

Quindi nel tuo template sostituisci la chiamata alla funzione get_the_archive_title() con:

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

Grazie per la risposta. Purtroppo non funziona per me. Continua a mostrare "Archivi:". Sono nell'archivio di un custom post type, può essere utile questa informazione?

Stefano Stefano
6 nov 2016 22:11:07

Qualcuno può aiutarmi in qualche modo?

Stefano Stefano
7 nov 2016 15:35:37

Devi controllare il tuo template degli archivi. Aggiorna la tua domanda con il suo contenuto. Se non sai quale pagina viene caricata, installa il plugin Query Monitor, ti fornirà tutte le informazioni necessarie.

Benoti Benoti
7 nov 2016 15:39:09

Grazie, ho appena modificato la risposta con il codice completo.

Stefano Stefano
7 nov 2016 15:42:52

Mi manca il tuo primo commento! Modifico la mia risposta

Benoti Benoti
7 nov 2016 15:58:26

Felice per te! Puoi cambiare parte del codice concatenando la stringa in questo modo: echo '<img src="'. get_site_url() .'wp-content/uploads/2016/09/link.png" width="20px">';

Benoti Benoti
7 nov 2016 16:10:43

Nota che, se il filtro post_type_archive_title non sembra rimuovere il prefisso "Archive:", potrebbe essere dovuto al tema o a un plugin. Dovresti cercare nel tuo codice e nelle impostazioni qualsiasi riferimento a questa stringa di filtro.

tklodd tklodd
16 dic 2021 22:38:35
Mostra i restanti 2 commenti
1

Inoltre, puoi rimuovere le parole non necessarie da qualsiasi titolo standard:

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() ) { // per i custom post type
    $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
Commenti

Hai rubato questo da: https://wordpress.stackexchange.com/a/179590/152624

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

Se osservi la funzione get_the_archive_title(), il prefisso è ora (da WP 5.5.0) racchiuso nel suo proprio 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>'
    );
}

Quindi puoi utilizzare il filtro per restituire una stringa vuota (o qualsiasi cosa tu voglia) per sovrascrivere il testo 'Archivio:':

add_filter( 'get_the_archive_title_prefix', '__return_empty_string');

oppure

add_filter( 'get_the_archive_title_prefix', function($prefix) {
    /*$prefix è disponibile per l'elaborazione*/
    return __('il tuo prefisso personalizzato: ', 'theme-text-domain');
});
5 ago 2022 18:26:58