Drupal 7 visualizza il filtro contestuale (tassonomia: visualizzazione riepilogativa), mostrando un nome-nome leggibile anziché un ID-termine


9

A mio avviso, sto usando un filtro contestuale, con un " output di riepilogo " predefinito, per filtrare i miei risultati in base al termine della tassonomia .

Il problema è che il risultato di riepilogo è raggruppato in base a un elenco di termini-id di tassonomia (incluso un conteggio dei nodi) e non di nomi di termini-id leggibili dall'uomo.

  • 1 (21)
  • 2 (16)
  • eccetera.

È possibile modificare (o agganciare) l'output della vista del riepilogo, non elencando il suo id-termine, ma il termine-id-nome?

  • Termine A (21)
  • Nome del termine B (16)

(Non mi dà fastidio se l'URL della richiesta effettiva rimane lo stesso.)

Il mio obiettivo è creare un formato di output più leggibile del mio riepilogo dei termini della tassonomia, che un utente finale possa comprendere.


Risposte:


7
  1. Imposta la visualizzazione sui campi ed esponi il campo che contiene il termine tassonomia associato.

  2. Imposta il filtro contestuale per filtrare un termine di tassonomia e seleziona per includere un validatore.

  3. Imposta il validatore sul termine tassonomia e seleziona la casella per il tuo vocabolario.

  4. Selezionare l'opzione per il tipo di valore del filtro come 'Nome termine convertito in ID termine.

  5. Salva il filtro e vai alla finestra di anteprima. Se inserisci il nome del testo del termine, dovresti vedere il contenuto desiderato.

Se si stanno trasmettendo le informazioni dall'URl, potrebbe essere necessario selezionare la casella di controllo "Trasforma trattini nell'URL in spazi nei valori del filtro nome termine", poiché il nome del computer utilizza trattini


Qualcosa che avevo dimenticato era che quando si seleziona un filtro contestuale, deve essere per Termine tassonomia (nome) e utilizzare una relazione con il campo sui nodi che si stanno visualizzando con il termine stesso, piuttosto che Contenuto: my_term_field_name
CR47

Questa risposta spiega come far funzionare il filtro contestuale con il nome leggibile dall'uomo del termine tassonomia, ma non risponde alla domanda. La domanda è come visualizzare il nome leggibile dall'uomo del termine tassonomia nei risultati filtrati.
BrokenBinary,

5

Copia il file "views_view-summary.tpl.php" nella cartella "moduli / contrib / views / theme". (Puoi farlo visualizzare o bloccare in modo specifico aggiungendo un suffisso-nome file.)

Nota: se lo usi come visualizzazione di visualizzazione amministratore, assicurati di copiare questo file nella cartella dei temi di amministrazione, non nella cartella dei temi predefinita!

Non è necessario alcun cambiamento nelle impostazioni di visualizzazione. Regola semplicemente il tuo tpl-override alle seguenti righe e i tuoi ID-termine vengono convertiti in nomi di termini leggibili:

<div class="item-list">
  <ul class="views-summary">
    <?php foreach ($rows as $id => $row): ?>
    <li>
      <a href="<?php print $row->url; ?>"<?php print !empty($row_classes[$id]) ? ' class="'. $row_classes[$id] .'"' : ''; ?>>
        <?php
        /* begin replacement */
        $term_object = taxonomy_term_load($row->link);
        print  $term_object->name; 
        /* end replacement*/
        ?>
      </a>
      <?php if (!empty($options['count'])): ?>
      &nbsp;(<?php print $row->count?>)
      <?php endif; ?>
    </li>
    <?php endforeach; ?>
  </ul>
</div>

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.