Como uso filtros e relacionamentos contextuais para mostrar artigos relacionados?

8

Então, eu tenho tentado descobrir isso a maior parte do dia. Eu o tinha essencialmente trabalhando no visualizador em um ponto, mas agora não parece funcionar.

Caso de uso: cada nó publicado com o tipo de conteúdo "Artigo" vem com um campo Taxonomia para as tags incluídas. O que estou tentando fazer é criar um bloco que apareça no artigo com uma série de miniaturas vinculadas a outros artigos. Esses artigos, por sua vez, são relacionados com base nas tags usadas em cada artigo.

Então, a questão é:

  1. Qual seria uma boa maneira de configurar isso usando Filtros e Visualizações Contextuais para que a própria Visualização veja automaticamente as tags de campo usadas como referência de termo de Taxonomia em um Artigo e exiba automaticamente a saída com base nas tags de cada artigo?

Tentei configurar o Filtro Contextual para estar ciente de que os termos estariam no Tipo de Conteúdo: Artigos através do filtro Relacionamentos, mas, francamente, estou meio confuso quanto ao que preciso fazer para conseguir isso.

John Riley
fonte
Esta é provavelmente a maneira mais fácil, eu estava tentando realizar a mesma coisa e às vezes pensamos demais nas coisas. ;) drupal.stackexchange.com/questions/69426/…
kyletaylored 01 /

Respostas:

1

Eu implementei o mesmo em um projeto no Drupal 7 para exibir produtos do mesmo catálogo.

Você pode criar uma exibição do conteúdo do artigo e criar filtros contextuais para tags. Ele exibirá todo o artigo dessas tags.

Você pode seguir a etapa abaixo:

  • Adicione um filtro contextual de tags. Botão de opção marcado "Fornecer valor padrão".
  • Selecione "ID do termo de taxonomia do URL" no menu suspenso do tipo.
  • Marque a caixa de seleção "Carregar filtro padrão da página do nó".
  • Marque a caixa de seleção "Limitar termos por vocabulário".
  • Na seção Vocabulário, marque a caixa de seleção Vocabulário (tags) que você deseja adicionar filtro nas visualizações.
  • Na seção mais, marque a caixa de seleção "Permitir vários valores", para que várias tags possam usar o termo.

Você pode encontrar a imagem abaixo para referência.

Você também precisa adicionar um filtro contextual do ID do nó e seguir a etapa abaixo, para que a página do nó atual não seja exibida na seção de visualizações relacionadas.

  • Adicionar conteúdo: nula filtro contextual nas visualizações.
  • Marque o botão de opção "Fornecer valor padrão" e selecione "ID do conteúdo do URL" no menu suspenso tipo.
  • Na seção mais no filtro contextual, marque a caixa de seleção "Excluir".

exibir produtos relacionados nas visualizações da mesma categoria

Jayendra Kainthola
fonte
0

Você já tentou usar Similar by Terms ?

(editar) O problema com os argumentos da taxonomia do Views é que a taxonomia agora está contida em um campo, não em algum código do módulo de taxonomia vodu. Por esse motivo, parte da API de taxonomia do Drupal 6 não está disponível no Drupal 7.

Eu uso o módulo de contexto com argumentos de vistas de contexto . Eu fiz um patch que o portava Drupal 7. Isso dá outra opção no filtro Contexual nas visualizações para obter os argumentos com base no contexto ou nos objetos e entidades carregados naquele momento.

Esta é uma função particularmente usada:

function taxonomy_node_get_terms($node, $key = 'tid') {
static $terms;
  if (!isset($terms[$node->vid][$key])) {
    $query = db_select('taxonomy_index', 'r');
    $t_alias = $query->join('taxonomy_term_data', 't', 'r.tid = t.tid');
    $v_alias = $query->join('taxonomy_vocabulary', 'v', 't.vid = v.vid');
    $query->fields( $t_alias );
    $query->condition("r.nid", $node->nid);
    $result = $query->execute();
    $terms[$node->vid][$key] = array();
    foreach ($result as $term) {
      $terms[$node->vid][$key][$term->$key] = $term;
      }
  }
return $terms[$node->vid][$key];
}

Não deveria ter sido removido do núcleo do Drupal. Ele encontrará os termos de taxonomia que você usa se passar o objeto de nó atual.

Adam S
fonte
Não. Vou dar uma olhada, no entanto. Minha principal preocupação é que não quero me tornar excessivamente dependente de módulos, pois isso pode ocasionalmente causar um pouco de instabilidade em um ambiente de produção.
John Riley
termos semelhantes apenas cria uma visão que você pode clonar. então desative-o quando terminar.
Então, onde exatamente eu carrego essa função? Acabo de modificar o módulo de taxonomia em algum lugar?
John Riley