Bir görünümdeki bir sözcük dağarcığındaki yalnızca kök terimlerini nasıl filtreleyebilirim?


15

Ben böyle yapılandırılmış bir kelime var:

  • Kök Alfa
    • Terim Alfa 1
    • Alfa 2 terimi
      • Ara Sınav Alfa 1
  • Kök Beta
  • Kök Gama
    • Terim Gama 1
    • Terim Gama 2

Görünümü sadece kelime dağarcığının kök terimlerini göstermek için nasıl filtreleyebilirim? Şu anda benim görüşüm çocukları olduğu kadar kök terimleri de gösteriyor (Terim * *)

Bundan sonra, 'Kök Alfa' (ya da onun tid'i ya da bir bağlamdan ne olursa olsun) argümanını geçmek ve daha sonra sadece 'Kök Alfa'nın doğrudan çocuklarına süzülmesini istiyorum. (Alfa * terimi). Bundan daha fazla derinliğe süzmek bir bonus olacaktır.

Tüm terimlerimi tek bir kök terime koyarsam çalışabilirim, böylece kelime haznesi olur:

  • Gerçek Kök
    • Kök Alfa
      • Terim Alfa 1
      • Alfa 2 terimi
        • Ara Sınav Alfa 1
    • Kök Beta
    • Kök Gama
      • Terim Gama 1
      • Terim Gama 2

Hangi kelime haznesinin yapısının daha doğru olduğundan emin değilim.

Yanıtlar:


13

Sadece kök terimleri görüntülemek için, kesinlikle birini facepalm yapacak bir çözüm var (en azından bunu yaptım):

  1. Sınıflandırma görünümünüze bağlamsal bir filtre ekleyin
  2. Sınıflandırma terimini seçin : ana terim .

    Bunu şu şekilde ayarlayın: Bir filtre değeri mevcut değilse : Varsayılan değer girin - Sabit değer . Değeri 0 olarak ayarlayın .

Evet, hepsi bu. Ebeveyn olmayan terimlerin burada 0 değeri vardır. Taxonomy_term_hierarchy tablosunun üst alanının açıklamasına bakın:

Birincil Anahtar: Terimin üst öğesinin {taxonomy_term_data} .tid değeri. 0, ebeveyn olmadığını belirtir.


Çok teşekkür ederim, kesinlikle bunun için kendimi facepalmed. Birisi buna
takılmak zorunda kalırsa

2

statik bir sınıflandırma yapınız varsa, kullanarak filtreleyebilirsiniz, filter criterion: Content: Has taxonomy terms (with depth)ardından bu yerde sadece filtrelenecek kök terimlerini seçebilirsiniz:

filtre ölçütü: İçerik: Sınıflandırma terimleri vardır (derinlemesine)

Umarım bilgi faydalı olur.


Taksonomi yapısı statik olmayacak ve bu bir argüman iletmeme ve daha sonra kök terimin çocuklarına filtre uygulamama izin vermiyor.
Phizes

@ moon.watcher: Taksonomi terimini (derinlikle) nasıl kullanabilirim? Yalnızca ebeveynleri seçiyorum ama çocuklar da ortaya çıkıyor.
Sokratis

1

Bunu basit bir filtre ve statik olmayan bir sınıflandırma yapısıyla da yapabilirsiniz:

  1. Filtre ölçütü ekle: Sınıflandırma terimi: ebeveyn kimliği
  2. "Eşittir" operatörünü seçin ve değeri "NULL" ile doldurun

resim açıklamasını buraya girin

Yalnızca sınıflandırmanızın kök terimlerini görüntüler ve sınıflandırma yapısını daha sonra değiştirirseniz yine de çalışır ...


Evet, @ scandel statik olmayan bir taksonomi yapısını işleyecekti, ancak soruda ortaya konduğu gibi ağaçtan aşağıya doğru ilerlemeyecekti, kabul edilen cevap.
Phizes

0

Sayfanızda WHERE parent = 0kullanarak kullanarak seçebilirsiniz db_query().


"Sayfanızda" ile ne demek istediğinizden emin değilim, lütfen açıklayın? Ayrıca sorguyu kendim yürütmüyorum, görünümler, bu yüzden sorguyu değiştirmek zorunda kalmaz mıyım?
Phizes
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.