Ansichten 3, Kontextfilter nach Sprache - mehrere Sprachen zulassen

8

Für diese Site, die ich baue, muss ich in der Lage sein, Folgendes zu tun.

  1. Wenn der Benutzer die Site auf Englisch anzeigt, werden alle englischen Artikel angezeigt
  2. Wenn der Benutzer die Website auf Niederländisch anzeigt, werden alle niederländischen Artikel angezeigt - aber auch die nicht übersetzten englischen
  3. Wenn der Benutzer die Website auf Deutsch anzeigt, werden alle deutschen Artikel angezeigt - aber auch die nicht übersetzten englischen.

Mit dem Kontextfilter "Inhaltsübersetzung: Sprache" kann nur ein Wert eingegeben werden. Das ist entweder eine bestimmte Sprache oder alles.

In meinem Fall wäre es jedoch erforderlich, beispielsweise "en + nl" oder "en + de" einstellen zu können. Wie man es mit der Taxonomie "Hat Taxonomie" machen kann, möchte ich so etwas wie "Hat Sprache".

Kasper
quelle

Antworten:

3

Ich habe diese Aufgabe folgendermaßen gelöst:

  • Wählen Sie unter "Wenn der Filterwert nicht verfügbar ist" die Option "Standardwert bereitstellen".
  • Verwenden Sie dann "PHP-Code" als Wert für "Typ".
  • Der tatsächliche PHP-Code, den ich hinzugefügt habe, ist im folgenden Screenshot dargestellt:

Geben Sie hier die Bildbeschreibung ein

Taras Germanyuk aus der Ukraine
quelle
PHP zu einer Ansicht hinzufügen? Das ist hässlich ..... Es löst das Problem, aber ich denke nicht, dass dies eine gute Idee ist.
itsdarrylnorris
Das mag hackisch sein, aber genau das hat mir das gebracht, was für eine etwas andere Anforderung benötigt wird - eine Ansichtsseite mit Sprachpräfixen: site.com/en und site.com/ja ... Wenn der Benutzer auf EN ist, werden alle Inhalte mit angezeigt EN Inhalt; Beim Umschalten auf die JA-Schnittstelle werden nur Inhalte mit JA-Übersetzung angezeigt. Vielen Dank!
Jaesperanza
2

Eine Lösung wäre die Verwendung der Feldübersetzung:

  1. Setzen Sie "Sprachausfall aktivieren" auf der Konfigurationsseite für die Entitätsübersetzung auf "Aktiv".
  2. Stellen Sie die Ansicht so ein, dass die aktuelle Benutzersprache verwendet wird (Erweitert> Andere> Feldsprache).

Erledigt.

genießen
quelle
Auf dieser Seite wird keine Option "Sprachausfall aktivieren" angezeigt. Ich denke, ich muss das Entity-Übersetzungsmodul vorher installieren ...
Headkit
Wie würden Sie sonst auf die Konfigurationsseite des Moduls zugreifen? Ich hätte das jedoch deutlicher herausstellen sollen, also danke, dass Sie diese Informationen hinzugefügt haben.
Genießen Sie den
1

Ich denke, Sie benötigen dieses Modul: https://www.drupal.org/project/select_translation

Es bietet Sprach-Fallback-Funktionen für Knoten, die mit Inhaltsübersetzung (nicht Entitätsübersetzung) in Ansichtslisten übersetzt wurden. Dies ist eine Alternative zur Option "Feldsprache" für Ansichten, die für mit Inhaltsübersetzung übersetzte Knoten nicht funktioniert.

Hugronaphor
quelle
1

Um eine Ansicht mit einem Standard-Sprach-Fallback zu erhalten, wenn keine Knotenübersetzung vorhanden ist, und dann die Standardsprache anzuzeigen, stellen Sie einfach UNCHECK:

X Fügen Sie der Abfrage bei Bedarf die Feldsprachenbedingung hinzu

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Jorge Díaz
quelle