it-swarm-eu.dev

Získat pole termín taxonomie v nadpisu přepisu Zobrazení 3

Je možné získat název taxonomického pole v názvu pohledu pomocí názvu potlačení v kontextových filtrech? Vím, že mohu získat taxonomická pole pomocí vztahů, ale existuje argument nebo něco podobného, ​​co mohu použít v přepisovacím názvu?

Žádám o Drupal 7.

6
Jeremy Love

Nedávno jsem tento problém vyřešil skrytím zobrazení výchozího názvu v pohledech a do zobrazení přidal pole „content all: taxonomy term“. Poté v části "záhlaví" pohledů přidejte "global: text area" a vyberte textový formát "php code". zaškrtněte "použít náhradní vzory z prvního řádku". Kliknutím na „náhradní vzory“ zobrazíte všechny své tokeny. Do textového pole vložte kód: <h1>[term_node_tid]</h1> Název vašeho termínu by měl nahradit výchozí název.

Snad to pomůže.

2
jive

Podařilo se mi vyřešit velmi podobný problém, ve kterém jsem musel přepsat zobrazovaný název polem od prvního výsledku.

Použil jsem hook_views_pre_render() k dosažení tohoto v drupal 7).

function tag_views_pre_render(&$view) {
  if( $view->name == 'flex' ){
    if ( count($view->result) ){
      $view->build_info['title'] = $view->result[0]->node_title;
    }
  }
}
4
Pez

jediné řešení, které jsem našel (díky FatGuyLaughing: http://drupal.org/node/365418#comment-4284154 ) bylo následující:

function MYMODULE_views_pre_build(&$view) {
  if ($view->name == 'view_machine_name') {
    if (is_numeric(arg(1)) && arg(1) > 0) {
      $term = taxonomy_term_load(arg(1));
      if ($term) {
        $view->display['default']->handler->options['title'] .= ' - ' . $term->name;
      }
    }
  }
}
2
lahode

Pokud používáte kontextový filtr „Obsah: Obsahuje ID taxonomie termínu (s hloubkou)“ a přepis názvu, stačí nastavit „% 1“ a název (aka jméno) termínu se nastaví jako název pohledu.

Pamatujte, že to nefunguje s filtrem podle pole „Obsah: Vocab XYZ (field_vocab_xyz)“. V tomto případě je termín ID nastaven jako název.

0
Kasalla