Отримайте публікації за спеціальним запитом id id


14

я хочу отримати спеціальні повідомлення за допомогою користувацького запиту. моя таксономія - це рецепт_tx та терміни (яловичина), (курка) тощо.

я намагався використовувати

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

але не везіння

може хтось допоможе мені, як отримати WP-повідомлення за їх терміном_id.

якщо id яловичини 37, то я хочу відновити всі повідомлення за допомогою term_id = 37

Спасибі


1
Ось Codex jdm2112 має на увазі: Відображення повідомлень за допомогою спеціального запиту . Він побив мене до цього ...
eyoung100

Відповіді:


30

Ви спробували використовувати клас WP_Query? Вам може бути простіше використовувати для цього вбудовані інструменти, а не спеціальний запит з нуля. Щось подібне до цього має працювати для вас:

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

EDIT: note the tax_query- це масив масивів за дизайном. Багато проблем із податковим запитом є наслідком відсутності цієї деталі.

EDIT: виправлене fieldзначення помилки виправленого вище, замінивши "id" на "term_id".


як я можу знайти повідомлення з пунктом LIKE int у цьому випадку?
Azeem Hassni

1
Зверніть увагу , що можливі значення fieldє term_id, name, slugабо term_taxonomy_id. Дивіться codex.wordpress.org/Class_Reference/…
Маріан
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.