Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara menggabungkan dua permintaan pencarian Wordpress ini?

Saya berasumsi Anda akan menggunakan args dalam loop.

Anda dapat menggunakan loop untuk menambahkan semua post_ids yang dikembalikan ke array. Anda bisa menjalankan dua loop terpisah, dan menambahkan semua entri ke array. Anda perlu memeriksa entri ganda, sehingga Anda tidak mencetak posting yang sama dua kali.

Jadi, Anda akan melakukan sesuatu seperti-

//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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Memindahkan baris dari satu tabel ke tabel lainnya (Sisipkan daftar nilai tidak cocok dengan daftar kolom)

  2. Cara mendapatkan keluaran integer dari kueri SQL

  3. Menggunakan Alias ​​Kolom dalam Klausa SELECT yang Sama

  4. Seperti Case Sensitive di MySQL

  5. PHP/MySQL - bagaimana cara membuat tautan hapus secara otomatis untuk satu baris dalam tabel yang sudah dibuat secara otomatis?