Advertisement
miriamdepaula

WordPress: Busca Avançada/ Advanced Search

Feb 13th, 2012
660
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.18 KB | None | 0 0
  1. <?php    
  2. //query avançada por taxonomia [tax_query()] e custom fields [meta_query()]
  3.     $params = array();
  4.    
  5.     if( isset($_GET['tipo_imovel']) && $_GET['tipo_imovel'] != -1 ){
  6.            
  7.       $tipo = array(
  8.             'taxonomy' => 'lc_tipo_imovel',
  9.             'terms' => $_GET['tipo_imovel'],
  10.             'field' => 'slug'
  11.         );
  12.         $params['tax_query'][] = $tipo;
  13.        
  14.     }
  15.    
  16.     if( isset($_GET['situacao_imobiliaria']) && $_GET['situacao_imobiliaria'] != -1 ){
  17.      
  18.       $situacao = array(
  19.             'taxonomy' => 'lc_situacao_imobiliaria',
  20.             'terms' => $_GET['situacao_imobiliaria'],
  21.             'field' => 'slug'
  22.         );
  23.         $params['tax_query'][] = $situacao;
  24.        
  25.     }
  26.    
  27.     if( isset($_GET['numero_comodos']) && $_GET['numero_comodos'] != -1 ){
  28.      
  29.       $comodos = array(
  30.         'key' => '_lc_search_comodos',
  31.         'value' => $_GET['numero_comodos'],
  32.         'compare' => '=',
  33.         'post_type' => 'lc_imoveis'
  34.       );
  35.      
  36.       $params['meta_query'][] = $comodos;      
  37.     }
  38.    
  39.     if( isset($_GET['localizacao']) && $_GET['localizacao'] != -1 ){
  40.      
  41.       $localizacao  = array(
  42.         'key'       => '_lc_search_localizacao',
  43.         'value'     => $_GET['localizacao'],
  44.         'compare'   => '=',
  45.         'post_type' => 'lc_imoveis'
  46.       );
  47.      
  48.       $params['meta_query'][] = $localizacao;
  49.     }
  50.    
  51.     if( isset($_GET['preco_minimo']) && $_GET['preco_minimo'] != -1 ){
  52.      
  53.       $preco_minimo = array(
  54.         'key'       => '_lc_preco_minimo',
  55.         'value'     => $_GET['preco_minimo'],
  56.         'type'      => 'numeric',
  57.         'compare'   => '>=',
  58.         'post_type' => 'lc_imoveis'
  59.       );          
  60.      
  61.       $params['meta_query'][] = $preco_minimo;
  62.     }
  63.    
  64.     if( isset($_GET['preco_maximo']) && $_GET['preco_maximo'] != -1 ){
  65.      
  66.       $preco_maximo = array(
  67.         'key'       => '_lc_preco_maximo',
  68.         'value'     => $_GET['preco_maximo'],
  69.         'type'      => 'numeric',
  70.         'compare'   => '<=',
  71.         'post_type' => 'lc_imoveis'
  72.       );          
  73.      
  74.       $params['meta_query'][] = $preco_maximo;
  75.     }
  76.    
  77.    
  78.      $busca = new WP_Query( $params );
  79.   ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement