Domanda

Get plug Messaggi alla lista messaggi di tipo postale "progetto". Voglio filtrare l'elenco per due campi personalizzati: anno (ex 2006). E lo stato (ex completati.). Ho aggiunto meta_query al args get_post del plugin e provato lo shortcode:

[get_posts post_type="project" meta_query="array(array('key' => 'state', 'value' => 
'Completed'),array('key' => 'year','value' => '2006'))" suppress_filters="false"]

Questo non funziona, anche se posso ottenere sia "stato" e "anno" per il lavoro dal proprio utilizzando meta_key e meta_value.

Qualcuno mi ha messo nella giusta direzione?

È stato utile?

Soluzione

Oltre il plugin non aggiornato, questo non funzionerà perché l'arg meta_query viene valutata come una stringa:

array(3) {
  ["post_type"] => string(7) "project"
  ["meta_query"] => string(96) "array(array('key' => 'state', 'value' => 
'Completed'),array('key' => 'year','value' => '2006'))"
  ["suppress_filters"] => string(5) "false"
}

Vi suggerisco di fare un modello , dove si sarebbe chiamare direttamente get_posts () con il meta_query si desidera.

Si dovrà copiare il codice che gestisce la quotazione attuale dei posti.

Altri suggerimenti

Non credo che il plugin stato aggiornato per supportare i nuovi args di query, o specificamente in questo caso, l'arg meta_query.

Gli elenchi pagina plugin di compatibilità fino a 3.0.5 , e se non ricordo male, meta_query è stato introdotto in 3.1 , così naturalmente mi piacerebbe concludere il supporto non è ancora disponibile ..

Potrei sbagliarmi, basta unire i puntini ..

Gli usi del plugin shortcode_atts per limitare l'elenco degli argomenti accettati:

http: // plugins.trac.wordpress.org/browser/nurelm-get-posts/tags/0.3/get-posts.php#L29

meta_query non è su quella lista. Io suggerirei fork il plugin o chiedere all'autore di aggiornarlo per consentire le query meta.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a wordpress.stackexchange
scroll top