Geçerli sayfanın sınıflandırma terimini alma ve sorguları şablonda doldurma


16

Daha sonra aynı terimi paylaşan diğer yazı türleri için sayfadaki sorguları doldurabilmem için geçerli sayfanın belirli bir sınıflandırma terimini nasıl elde edeceğimi anlamaya çalışıyorum.

Temelde:

  • Sınıflandırma terimi vardır - eğitim politikası
  • page.php dört bölümden oluşur:
    1. sayfayı çıktılayan, ancak daha sonra üç sorgu içeren standart döngü
    2. terimi olan olaylar için genel döngü - eğitim politikası
    3. terimi - eğitim politikası olan raporlar için döngü
    4. terimi olan insanlar için eğitim döngüsü - eğitim politikası

Ben sadece ekstra döngüler içine terim sabit kod olabilir, sayfa belirli şablonlar yaptım, ama dinamik olarak nasıl yapacağını anlamak gerekir (aslında dört ya da beş sayfa olması gerekiyordu şimdi kırk ya da elli olduğunu).

Birkaç benzer soru buldum, ama hiçbiri uygulama yoluyla yolumu bulamadım.

Gerçekte sorulan soru açısından takip etmek biraz kafa karıştırıcı olan güncel sayfanın sınıflandırmasını alın .

Özel bir tek post-type.php şablon sayfasında özel sınıflandırmaya ait kimlik terimini alın

Umarım bu mantıklıdır ve çok teşekkürler.

Yanıtlar:


25

Hm, "sayfa" nesne türü için bir sınıflandırma doğru bir şekilde kaydettiyseniz ve daha sonra bu sınıflandırma terimini bir sayfaya atadıysanız ... Daha sonra sınıflandırma ve terim sümüklerine aşağıdaki şekilde erişebileceğinize inanıyorum:

get_query_var( 'taxonomy' )
get_query_var( 'term' )

Görüntülenen print_r($wp_query)geçerli bir sayfa oluştururken orada bulunan tüm parametreleri göreceksiniz. Yukarıdaki kod ile bu parametrelere erişiyorsunuz $wp_query.

Sonra tam bilgi ile nesne terimi almak için get_term_by fonksiyonunu kullanabilirsiniz ,

$term = get_term_by( 'slug', get_query_var('term'), get_query_var('taxonomy') );
echo $term->name;

Bu, terimin "güzel" adını yazdıracaktır.

Eğer kullanırsanız get_query_var('term')ya da $term->slug(terim nesnesini aldıktan sonra) bu sülük tüm diğer sorgularda kullanabilirsiniz inanıyorum.

Umarım yardımcı olur. Sayfalar için hiçbir zaman sınıflandırma kullanmadım. Nasıl geçtiğini bana bildir.


2

Sadece aşağıdaki kodu yapıştırın

Bu, geçerli sayfa sınıflandırmanızın adını ve açıklamasını yazdırır (isteğe bağlı)

<?php 
   $tax = $wp_query->get_queried_object();
   echo ''. $tax->name . '';
   echo "<br>";
   echo ''. $tax->description .''; 
?>

-2

Sayfalandırmayı etkinleştirmek için aramayı etkinleştirmeniz gerekebilir

Özel sınıflandırma bildirirken, hariç tutma aramasını devre dışı bırakmalısınız.

exclude_from_search => yanlış

Bu benim sorunumu çözdü.

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.