Como obtenho um bloco para usar uma URL para configurar um filtro contextual?

8

Os blocos não têm caminhos, então como posso passar um contexto para o bloco para obter os resultados corretos para uma página?

Sou novo e não tenho reputação suficiente para responder minha própria pergunta por oito horas (veja a figura!) A resposta para essa pergunta virá depois que o prazo expirar.

Ashlar
fonte
Eu tenho um problema similar. Esperemos que alguém pode me ajudar com isso: drupal.stackexchange.com/questions/27818/...
user6670

Respostas:

15

Uma página de visualizações pode ler o URL e usar um caminho para a página para ler uma entrada de termo de taxonomia para um filtro contextual. Um URL como example.com/a/term/bseria lido pela página de visualização com um caminho de a/%/b. O valor para %no URL é passado para o filtro contextual para determinar qual conteúdo incluir na exibição.

Como um bloco não possui um caminho, é necessário fazer um pouco mais de configuração para alcançar o resultado. Para fazer isso:

  1. Clique no filtro contextual no formulário de exibição de blocos em visualizações.
  2. Em When the filter value is NOT availableselecionar Provide default value.

Se a página no caminho for um termo de taxonomia, tente as etapas 3 e 4:

  1. Escolha Taxonomy term ID from URLna caixa suspensa Tipo.
  2. Verifique Load default filter from term page.

Ou tente o seguinte:

  1. Escolher Raw value from URL
  2. Identifique qual parte do URL é o termo. por exemplo. para A/term/Bo termo está na segunda posição.

Então:

  1. Sob When the filter value IS in the URL or a default is providedverificação "Especificar critérios de validação"
  2. Selecione Taxonomy terme o vocabulário específico que está sendo usado.
  3. Em Filter Value typenome do termo de escolha convertido em ID do termo "
  4. A verificação Transform dashes in URL to spaces in term name filter valuesgarantirá que qualquer alias de caminho gerado automaticamente que tenha convertido espaços em traços seja tratado adequadamente. Experimente a sua vista com esta opção marcada e desmarcada.

Se sua visualização não estiver aparecendo na página, as etapas de solução de problemas devem incluir a verificação de que a visualização funciona testando as entradas na visualização da visualização. Certifique-se de que os espaços sejam manipulados para corresponder à configuração da etapa 8. Além disso, verifique se o bloco de exibição está exposto admin/structure/block.

Ashlar
fonte
Eu tenho dois vocabulários de taxonomia. Coleções coll1, coll2 e coll3 Tamanhos pequeno, médio e grande Meu URL é assim: collections / coll1 / small Tentei usar o método que você descreve, mas não obtive resultados. Qualquer ideia?
gritando SiLENCE
Eu precisaria de mais informações sobre sua opinião. Por que não adicionar uma pergunta e descrever quais campos, filtros, filtros contextuais você configurou e nós descobriremos isso.
Ashlar
1

Se você deseja selecionar de acordo com um Tipo de conteúdo em vez de taxonomia, precisa de uma configuração diferente. Tente o seguinte:

  1. Clique em Filtros Contextuais
  2. Adicionar conteúdo: NID Na seção QUANDO O VALOR DO FILTRO NÃO ESTÁ DISPONÍVEL , selecione Fornecer valor padrão e escolha ID do conteúdo do URL na lista suspensa.
  3. Na seção QUANDO O VALOR DO FILTRO ESTÁ DISPONÍVEL OU UM PADRÃO FORNECIDO , selecione Especificar critérios de validação , escolha Conteúdo na caixa de seleção VALIDADOR e escolha os tipos de conteúdo que você autoriza que sejam exibidos.

Isso deve resolver.

Urb Gim Tam
fonte
A validação é aprovada, mas não está filtrando o NID? Preciso criar um relacionamento com o filtro contextual?
Sonicthoughts