Yayınları terim kimliği özel sorgusuna göre al


14

özel sorgu kullanarak özel mesajlar almak istiyorum. benim sınıflandırma tarifi_tx ve içinde (Sığır), (Tavuk) vb.

kullanmayı denedim

SELECT p.* FROM wp_posts p, wp_term_taxonomy tt, wp_term_relationships tr 
WHERE p.ID=tr.`object_id` 
AND tt.`term_id`=tr.`term_taxonomy_id` 
AND (p.post_type = 'recipe_cpt')
AND p.post_status = 'publish'
AND tt.`term_taxonomy_id` = 37

ama şans yok.

birisi bana kendi term_id wp mesajları almak için yardımcı olabilir.

sığır id 37 ise o zaman ile tüm mesajları almak istiyorum term_id = 37

Teşekkürler


1
Kodx jdm2112'nin atıfta bulunduğu şudur: Özel Seçim Sorgusu Kullanarak Mesajları Görüntüleme . O beni yendi ...
eyoung100

Yanıtlar:


30

WP_Query sınıfını kullanmayı denediniz mi? Sıfırdan özel bir sorgu yerine bunun için yerleşik araçları kullanmanın daha kolay olduğunu görebilirsiniz. Aşağıdakine benzer bir şey sizin için çalışmalıdır:

<?php
$args = array(
'post_type' => 'recipe_cpt',
'tax_query' => array(
    array(
    'taxonomy' => 'recipe_tx',
    'field' => 'term_id',
    'terms' => 37
     )
  )
);
$query = new WP_Query( $args ); ?>

DÜZENLEME: tax_querytasarımına göre diziler dizisi olduğunu unutmayın . Vergi sorgusu sorunlarının çoğu bu ayrıntıyı kaçırmanın sonucudur.

EDIT: field'id' yerine 'term_id' ile değiştirilen yukarıdaki düzeltilmiş değer yazım hatası.


nasıl bu durumda LIKE yan tümce int ile yayınları bulabilirim?
Azeem Hassni

1
İçin olası değerler olduğunu unutmayın fieldvardır term_id, name, slugveya term_taxonomy_id. Bkz. Codex.wordpress.org/Class_Reference/…
Marian
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.