Estou tentando mostrar todas as propriedades de aluguel, primeiro todas as propriedades que não foram alugadas e depois todas as propriedades que estão alugadas no momento. Existe um tipo de postagem personalizado 'aluguel' com uma meta de postagem personalizada para o preço alugado (_price_rented), que é uma caixa de seleção (retorna verdadeiro ou falso ... verdadeiro se tiver sido alugado). Preciso alterar a consulta para mostrar todas as propriedades com as propriedades disponíveis (não alugadas) aparecendo primeiro e depois as propriedades alugadas aparecendo.
Aqui está a minha consulta:
$ts_properties = new WP_Query(
array(
'post_type' => 'rent',
'paged' => $paged,
'posts_per_page' => -1,
'meta_key' => '_price_rented',
'orderby' => 'meta_value',
'order' => 'DESC',
'meta_query' => array(
array(
'key' => '_price_rented',
'value' => false,
'type' => 'BOOLEAN',
),
)
)
);
Por algum motivo, essa consulta mostra todas as propriedades que foram alugadas. Quando alterno o valor de 'false' para 'true' na meta_query, ele não mostra nenhuma propriedade.
Então, pensei, o valor de retorno é falso (para propriedades que são alugadas) ou NULL (para propriedades que NÃO são alugadas), mas não sei como consultar um resultado NULL (não falso), adicionei um ' compare 'argumento com a meta_query e defina o valor como'! = ', mas isso também não funcionou.
EDIT: var_dump retorna o seguinte para um apartamento não alugado disponível: string(0) ""
e para um apartamento alugado não disponível:string(1) "1"
_price_rented
Na verdade, está definido para ambos true
e false
valores, ou está definido apenas para true
? Verifique o banco de dados, por favor. Eu perguntei porque uma caixa de seleção desmarcada não é passada POST
, então estou me perguntando se o valor está definido para esses casos.