2016-11-22 3 views
0

У меня есть обычная таксономия Country. Значения включают названия отдельных стран, а также поле «International», которое должно представлять все страны.Поиск сообщений по нескольким значениям пользовательской таксономии

Вот как это должно работать. Если я посмотрю на значение «Интернационал», он должен найти все должности, которые имеют только «Интернационал» в качестве значения для страны. Однако, если я посмотрю на значение «США», он должен найти все сообщения, которые имеют значение страны «США», плюс все сообщения, которые имеют значение страны «Интернационал», фильтруют любые повторяющиеся сообщения.

Я мог бы сделать международный как родитель ко всем другим значениям страны, но на самом деле это будет иметь обратный эффект, поскольку поиск должностей International также поднимет должности, предназначенные исключительно для, скажем, для США. Я полагаю, что могу иметь что-то вроде ниже:

Но нужно ли мне это делать для всех значений страны? Или как сделать это условно только тогда, когда значение поля не является «Интернационалом»?

ответ

0

Возможно, сделайте что-нибудь, что будет зацикливать весь ваш фильтр и каждый раз создавать различные фильтры фильтра query_post. Я не понимаю, как вы ставите страну как «международную», может быть, существует другой подход к тому, что вы пытаетесь достичь.

if ($filter) 
     { 
     $filterArray = array(
      'relation' => 'AND', 
     ); 
     foreach($filter as $item) 
      { 
       //IF Statement here 
      array_push($filterArray, array(
       'key' => 'country', 
       'value' => $item, 
       'compare' => '=' 
      )); 
      } 
     } 
Смежные вопросы