Como posso criar um WP_Query que retorna posts onde um meta_value <= outro meta_value

Tenho uma consulta SQL, bastante complexa e trabalhada escrita à mão em uma function. Para aproveitar as otimizações do WP_Query e simplificar o meu código para a manutenção, gostaria de convertê-lo em WP_Query . A maioria é óbvia, mas eu tenho uma coisa meta_value no meu WHERE que é um pouco não-padrão e não sei como converter essa parte.

Eu preciso selecionar postagens onde o meta_value em uma linha postmetapostmeta é <= o meta_value para outra linha postmeta .

Descartar um monte de coisas estranhas, aqui estão as coisas SELECT e WHERE codificadas à mão que são relevantes:

 $query = " SELECT * FROM $wpdb->posts p LEFT JOIN $wpdb->postmeta stock ON (p.ID = stock.post_id AND stock.meta_key = '_stock') LEFT JOIN $wpdb->postmeta threshold ON (p.ID = threshold.post_id AND threshold.meta_key = '_low_inventory_number') "; $where .= " AND threshold.meta_value IS NOT NULL AND stock.meta_value IS NOT NULL AND CAST(threshold.meta_value AS SIGNED) != 0 AND CAST(stock.meta_value AS SIGNED) <= CAST(threshold.meta_value AS SIGNED) "; 

A última linha onde eu estou comparando o meta_value estoque com o meta_value limiar é o que não vejo como converter no argumento de matriz de meta_query (AKA “Campo personalizado”) para WP_query .

Solutions Collecting From Web of "Como posso criar um WP_Query que retorna posts onde um meta_value <= outro meta_value"