Stellen Sie die Beziehung „OR' für meta_query ORtax_query ein
P粉101708623
P粉101708623 2024-04-04 20:01:43
0
1
1428

Ich versuche, mit WP_Query eine Abfrage zu erstellen, die ein meta_query-Element und ein tax_query-Element enthält. Noch wichtiger ist, dass ich keine Ergebnisse finden möchte, die beide Bedingungen (und die AND-Klausel) erfüllen, sondern Ergebnisse, die die eine oder andere davon erfüllen (OR-Klausel).

$loop = new WP_Query( array( 
            'post_type' => 'tickets',
            'paged' => $paged,
            'order'     => $order,
            'orderby'   => $orderby,
                'meta_query' => array(
                    array(
                    'key' => 'tps_email', // Use 'key' for author
                    'value' => 'web@data.com', // Replace with the author ID you want to query
                    'compare' => 'LIKE', // Use '=' to match the author ID
                    ),  
                ),  
                'tax_query' => array(
                    array(
                    'taxonomy' => 'topic', // Replace with your custom taxonomy name
                    'field' => 'slug', // You can use 'id', 'slug', or 'name' depending on how you want to identify the term
                    'terms' => 'housekeeping', // Replace with the slug of the specific term you want to query
                    ),
                ),
            )
            );

Ich akzeptiere diese Ausgabe

P粉101708623
P粉101708623

Antworte allen(1)
P粉099000044

以下是如何在meta_query和tax_query之间设置“OR”关系:

$args = array(
   'post_type' => 'tickets',
   'paged' => $paged,
   'order'     => $order,
  'tax_query' => array(
    'relation' => 'OR', // Set the relationship to OR
    array(
        'taxonomy' => 'topic',
        'field' => 'slug',
        'terms' => 'housekeeping',
    ),
    array(
        'taxonomy' => 'your_taxonomy_2',
        'field' => 'slug',
        'terms' => 'term_slug_2',
    ),
  ),
  'meta_query' => array(
    'relation' => 'OR', // Set the relationship to OR
    array(
        'key' => 'tps_email',
        'value' => 'web@data.com',
        'compare' => '='
    ),
    array(
        'key' => 'custom_field_2',
        'value' => 'custom_value_2',
        'compare' => '='
    ),
  ),
);
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage