Visualizações 3, filtro contextual no idioma - permite vários idiomas

8

Portanto, para este site que estou construindo, preciso fazer o seguinte.

  1. Quando o usuário visualiza o site em inglês, mostra todos os artigos em inglês
  2. Quando o usuário visualizar o site em holandês, mostre todos os artigos em holandês - mas também os em inglês não traduzidos
  3. Quando o usuário visualizar o site em alemão, mostre todos os artigos em alemão - mas também os artigos em inglês não traduzidos.

O filtro contextual, 'Tradução de conteúdo: idioma', permite apenas colocar um valor. Esse é um idioma especificado ou tudo.

Mas, no meu caso, seria necessário definir, por exemplo, "en + nl" ou "en + de". Como se pode fazer com a taxonomia 'Tem taxonomia', eu gostaria de algo como 'Tem linguagem'.

Kasper
fonte

Respostas:

3

Eu resolvi esta tarefa da seguinte maneira:

  • Para "Quando o valor do filtro não estiver disponível", selecione a opção "Fornecer valor padrão".
  • então use "PHP Code" como o valor para "Type"
  • o código PHP real que adicionei é como mostrado na captura de tela abaixo:

insira a descrição da imagem aqui

Taras Germanyuk Da Ucrânia
fonte
Adicionando php em uma view? Isso é feio ..... Resolve o problema, mas não acho que seja uma boa ideia.
Itsdarrylnorris
Isso pode ser uma tolice, mas isso me deu exatamente o que é necessário para um requisito um pouco diferente - uma página de visualização, com prefixos de idioma: site.com/en e site.com/ja ... Quando o usuário está em EN, mostra todo o conteúdo com Conteúdo EN; quando alternado para a interface JA, mostra apenas o conteúdo com tradução JA. Obrigado!
jaesperanza
2

Uma solução seria usar a tradução de campo:

  1. Defina "Ativar fallback de idioma" para ativo na página de configuração de tradução da entidade.
  2. Defina a visualização para usar o idioma atual do usuário (Avançado> Outro> Idioma do campo).

Feito.

alegria
fonte
não consegue ver a opção "Ativar fallback de idioma" nessa página. necessidade de instalar módulo de tradução Entidade antes, eu acho ...
headkit
de que outra forma você acessaria a página de configuração dos módulos? Eu deveria ter apontado isso mais claramente, então, obrigado por adicionar essa informação.
cjoy
1

Eu acho que você precisa deste módulo: https://www.drupal.org/project/select_translation

fornece funcionalidade de fallback de idioma para nós traduzidos com a tradução de conteúdo (não a tradução de entidades) nas listagens de visualizações. Essa é uma alternativa à opção "Idioma do campo" das visualizações, que não funcionaria para nós traduzidos com a tradução de conteúdo.

hugronaphor
fonte
1

Para ter uma Visualização com um fallback de idioma padrão se não existir uma tradução de nó e, em seguida, mostrar o idioma padrão , garanta UNCHECK:

X Quando necessário, adicione a condição do idioma do campo à consulta

insira a descrição da imagem aqui

insira a descrição da imagem aqui

Jorge Díaz
fonte