PluginUs.Net - Business Tools for WooCommerce and WordPress

[realize your idea - make your dreams come true]
Cyber Monday 2021
Cyber Monday 2021 timer

Support Forum

You need to log-in to create request (topic) to the support

MDTF - фильтр метаданных WordPress и фильтр таксономий - логика работы "И"

This support system is for all types of the plugins as for premium versions, so for free ones! If you have premium version do not forget in the private data of the request (!!not in the text of the support request!!) after its publishing insert purchase code please (see blue-green button on the right side) and press Save button.
If you not got email within 24~36 business hours, firstly check your spam box, and if no any email from the support there - back to the forum and read answer here. DO NOT ANSWER ON EMAILS [noreply@pluginus.net] FROM THE FORUM!! Emails are just for your info, all answers should be published only here.
The support doesn work on Saturdays and Sundays, so some Friday requests can be answered on Monday.

Мы купили у Вас фильтр MDTF ( 12 февраля 2020 г. -код в личных данных)

Большая просьба - подскажите пож. как там включить логику фильтрации"И" - как на демосайте https://woocommerce.wp-filter.com/ajaxed-search-1/

Где при выборе man(9) и wooman(4) в результате получаем 13 товаров, т.е логика"И".

Я нашел описание"

Как установить логику «И» для таксономий в терминах одной и той же таксономии

https://wp-filter.com/howto/how-to-set-logic-and-for-taxonomies-terms-of-the-same-taxonomy/

но у меня этот код не работает, я использую - [mdf_results_by_ajax shortcode="mdf_custom template=any/sales post_type=sales taxomonies=locations orderby=date order=desc page=1 per_page=4 custom_id = 777" animate=1 animate_target=".obekty"]

и ставлю в файл functions.php следующий код:

add_filter('mdf_custom_shortcode_query_args', 'mdf_custom_shortcode_query_args', 10, 2);

function mdf_custom_shortcode_query_args($args, $custom_id)
{
$and_tax_relation = array('locations');
//https://codex.wordpress.org/WordPress_Taxonomy
if ($custom_id == '777')
{
$args['tax_query'] = mdf_modify_tax_query($args['tax_query'], $and_tax_relation);
//add_filter('mdf_dyn_tax_recount_args', 'mdf_dyn_tax_recount_args', 10, 1);
}

return $args;
}

//*** for dynamic recount
add_filter('mdf_dyn_tax_recount_args', 'mdf_dyn_tax_recount_args', 10, 1);
function mdf_dyn_tax_recount_args($tax_query_array)
{
$and_tax_relation = array('locations');
return mdf_modify_tax_query($tax_query_array, $and_tax_relation);
}

//logic of AND relations in taxonomies
function mdf_modify_tax_query($tax_query_array, $and_tax_relation)
{
if (!empty($tax_query_array))
{
foreach ($tax_query_array as $key => $value)
{
if (isset($value['taxonomy']))
{
if (in_array($value['taxonomy'], $and_tax_relation))
{
$tag_terms = $tax_query_array[$key]['terms'];

if (!empty($tag_terms))
{
$tag_terms_tpl = $tax_query_array[$key];
$tag_terms_tpl['terms'] = array();
unset($tax_query_array[$key]);
foreach ($tag_terms as $term_id)
{
$tag_terms_tpl['terms'] = array($term_id);
$tax_query_array[] = $tag_terms_tpl;
}
}
}
}
}
}

return $tax_query_array;
}

Ссылка на мой сайт http://phuket.bs-studio.ml/sales/

Спасибо за ответ

Здравствуйте

Похоже  в Вашем  фильтре  нет таксономий(или  я  ошибаюсь?)

Этот  код  работает  только  с  таксономиями. И  если  Вы  используете  именно  этот код,  тогда  таксономия  должна  иметь слаг  - 'locations'

Но  похоже  у  Вас в  фильтре только  мета   данные.

Таксономия на сайте есть, но я не фильтрую по таксономиям, Я просто хочу узнать как  включить логику фильтрации"И" - как на демосайте https://woocommerce.wp-filter.com/ajaxed-search-1/ 

Подскажите пож. какой код надо для этого использовать. Или в фильтре MDTF, такая возможность не предусмотрена?

Здравствуйте

Логика  И  работает  только  для  таксономий.    Этот код  должен  включить  логику  И ,  главное  добавить слаг  таксономии  для  который  Вы  хотите  включить   эту  логику - https://c2n.me/463wDeB.png

При фильтрации по таксономиям логика"И" работает. А при фильтрации по мета данным логика"И" не работает, работает только логика"ИЛИ".

Я правильно понял?

Демосайт https://woocommerce.wp-filter.com/ajaxed-search-1/  

показывает работу фильтра при фильтрации по таксономиям?

Здравствуйте

Да  эта  логика   работает только  с  таксономиями и   не  работает  с  мета  данными.

показывает работу фильтра при фильтрации по таксономиям? - Да