WP_Query: Meta_Query com valor serializado (ou uma solução alternativa)

Eu tenho uma Issue tipo de publicação, que tem meta-valores na forma de matrizes associativas (que são salvas como seqüências de caracteres serializadas para o database). Eles parecem um pouco semelhantes a isso:

  [article_reviews] => Array ( [0] => Array ( [title] => Article 1 [url] => http://itvar.dev/2015/11/fenicka-kolonizace-s-moreplavci-v-rudem/ [authors] => Author 1, Author 2 [rubriky] => Category 1 ), [1] => Array ( [title] => Article 2 [url] => http://itvar.dev/2015/11/milos-vorac-nebrat-ceske-slovo-nadarmo/ [authors] => Author 3 [rubriky] => Category 2 ) ), [article_essays] => Array ( [0] => Array ( [title] => Article A [url] => http://itvar.dev/2015/11/example-example [authors] => Author 1, Author B [rubriky] => Category A ), [1] => Array ( [title] => Article B [url] => http://itvar.dev/2015/11/example-example [authors] => Author C [rubriky] => Category B ) ) 

O problema é que eu preciso pesquisar o Issue tipo de publicação por esses dados. Isso significa que eu preciso criar uma wp_query com tax_query , que pode pesquisar em matrizes associativas. Algo semelhante a este:

 $search_query = 'Author 1'; $args = array( 'post_type' => 'issue', 'meta_query' => array( array( 'key' => 'article_reviews', 'value' => $search_query, 'relation' => 'LIKE' ), array( 'key' => 'article_essays', 'value' => $search_query, 'relation' => 'LIKE' ) ) ); // should find this post, because $article_reviews[0], $article_essays[0] 

fundo

Isso já foi respondido – por exemplo aqui – como impossível . Mas, como não vejo nenhuma maneira de contornar o problema que estou tentando resolver, gostaria de perguntar de qualquer maneira. E espero que essa questão ofereça algum valor para qualquer outra pessoa com uma situação semelhante à que tenho.

Estou construindo um site para uma revista sobre literatura. 25% do conteúdo da edição impressa fica online, 75% permanece somente em impressão. No entanto, cada Problema ( issue tipo de publicação personalizado) vem com uma lista de todos os artigos de 100% (meta-artigos article_reviews , articles_essays , etc .; 25% clicáveis, 75% não) que precisam ser pesquisáveis, para que o visitante da web encontre o específico Problema contendo o Author 1 .

No back-end, atualmente uso metabox com campos repetitivos (ninguém pode realmente agora, se houver 2 ou 20 comentários no problema atual), que economizem dados como matrizes associativas.

Estou muito aberto a soluções alternativas, mas:

  • “apenas dividir a matriz” como uma pergunta relacionada sugere não é realmente uma opção para mim, como dados para o Article 1 etc., precisam ser “colados” juntos de alguma forma
  • Eu preferiria preservar os arrays, então eu não teria que fazer mudanças brutais no meu back-end. Se realmente não há maneiras em torno disso, do que ok.

Obrigado!

Solutions Collecting From Web of "WP_Query: Meta_Query com valor serializado (ou uma solução alternativa)"