sql >> Database teknologi >  >> RDS >> Mysql

Hvordan kombinerer jeg disse to Wordpress-søgeforespørgsler?

Jeg går ud fra, at du vil bruge args i løkken.

Du kan bruge løkken til at tilføje alle de returnerede post_id'er til et array. Du kan køre to separate sløjfer og tilføje alle indgange til et array. Du skal tjekke for dobbeltindtastninger, så du ikke ender med at udskrive det samme indlæg to gange.

Så du ville gøre noget som-

//First loop    
$args = array(
    'post_type'             => 'product',
    'post_status'           => 'publish',
    'ignore_sticky_posts'   => 1,
    'orderby'               => $ordering_args['orderby'],
    'order'                 => $ordering_args['order'],
    'posts_per_page'        => apply_filters('yith_wcas_ajax_search_products_posts_per_page', get_option('yith_wcas_posts_per_page')),
    'meta_query'            => array(
        array(
            'key'           => '_visibility',
            'value'         => array('catalog', 'visible'),
            'compare'       => 'IN'
        ),
    )
);
while ( $loop->have_posts() ) : $loop->the_post();
    $post_id = get_the_ID();
    $my_post = my_post_function($post_id);
    //Store the items in an array
    $my_post_array [] = $my_post;
    query_posts($args); 
    endwhile;

 //Second loop 
  $args = array(
    'post_type'             => 'product',
    'post_status'           => 'publish',
    'ignore_sticky_posts'   => 1,
    'orderby'               => $ordering_args['orderby'],
    'order'                 => $ordering_args['order'],
    'posts_per_page'        => apply_filters('yith_wcas_ajax_search_products_posts_per_page', get_option('yith_wcas_posts_per_page')),
    'meta_query'            => array(
     array(
        'key'           => '_sku',
        'value'         => apply_filters('yith_wcas_ajax_search_products_search_query', $search_keyword),
        'compare'       => 'LIKE'
    )
    )
);
while ( $loop->have_posts() ) : $loop->the_post();
    $post_id = get_the_ID();
    $my_post = my_post_function($post_id);
    //Store the items in an array
    $my_post_array [] = $my_post;
    query_posts($args); 
    endwhile;

//Remove duplicate entries from the array
array_unique ( $my_post_array, SORT_STRING );



  1. html tredoblet i størrelse ved at returnere tomme tags efter en mysql-forespørgsel | hvordan løses - laravel

  2. Mysql:ukendt variabel, kan ikke køre nogen mysql-applikationer, ser ikke ud til at have noget med my.cnf at gøre

  3. Tutorial om SQL (DDL, DML) om eksemplet med MS SQL Server-dialekt

  4. En gennemgang af de nye analytiske vinduesfunktioner i MySQL 8.0