簡體   English   中英

按分類法自定義字段過濾自定義帖子

[英]Filter Custom Posts by Taxonomy Custom Field

我正在使用高級自定義字段插件,並嘗試通過分類字段過濾一些自定義帖子,修改WP_Query:

$wp_query = new WP_Query(
    array(
        'post_type' => 'recursos', // My custom post
        'posts_per_page' => 12,
        'meta_key' => 'recursos_tipo', // My Taxonomy custom field name
        'meta_value' => 'documentos' // My taxonomy slug; the value for filter
    )
)

如果我嘗試通過“ 文本字段”進行篩選,一切都很好,那么將修改WP_Query。 但是,當該字段是“分類”字段時,我不知道應該傳遞什么參數,因為它是一個對象。 我已經嘗試過使用分類法名稱和分類法ID,但是無法正常工作。

是否可以通過分類字段進行過濾? 我應該為'meta_value'傳遞什么參數? 謝謝!

更新-結構:

自定義帖子:“ recursos”。
自定義分類標准子彈:“ recursos-tipos”(組分類標准子彈)。
自定義分類法:“ documentos”(分類標槍)。
自定義分類ID:16。
ACF分類標准字段:“ recursos_tipo”。

更新-'tax_query'

我也嘗試過此方法,但不起作用。 顯示所有帖子:

$wp_query = new WP_Query(
    array(
        'post_type' => 'recursos',
        'posts_per_page' => 12,
        'paged' => $paged,
        'tax_query' => array(
            'taxonomy' => 'recursos-tipos',
            'field' => 'slug',
            'terms' => 'documentos'
        )
    )
);

重要提示:我認為這不起作用,因為我通過ACF分類標准字段“分配”了分類標准,並且它不會影響稅收。 我的分類法有0個帖子。 如果Tax有職位, tax_query可以正常工作。 有沒有一種方法可以通過ACF分類標准字段影響自定義分類標准的職位數?

您是否嘗試過WordPress自定義查詢args ,只需將“ Custom_tax”替換為您的Value:如下所示: WordPress WP_Query

<?php

$jabelquery = new WP_Query(  array( 
'post_type' => 'recursos',  // post,page, revision, custom_post_type
'tax_query' => array(                     //(array) - use taxonomy parameters (available with Version 3.1).
'relation' => 'AND',                      //(string) - Possible values are 'AND' or 'OR' and is the equivalent of ruuning a JOIN for each taxonomy
  array(
    'taxonomy' => 'recursos-tipos',                //(string) - Taxonomy.
    'field' => 'slug',                    //(string) - Select taxonomy term by ('id' or 'slug')
    'terms' => array( 'recursos_tipo' )                 //(string) - Operator to test. Possible values are 'IN', 'NOT IN', 'AND'.
     )
) ) 
 );
 // The Loop
 if ( $jabelquery->have_posts() ) :
 while ( $jabelquery->have_posts() ) : $jabelquery->the_post(); ?>


 <?php the_title(); ?>


 <?php endwhile; endif; ?>  

那么您可以使用ACF字段替換custom_tax,如下所示:

$jab_tax = get_field('taxonomy_custom_select');
'taxonomy' => $jab_tax,

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM