Для WordPress плагин Elementor выполняет большинство задач не прибегая к ковырянию в коде. Но всё же есть моменты, которые Elementor не выполняет без Хуков.
Так виджет AE Post Blocks от плагина AnyWhere Elementor Pro выводит записи именно те которые прописываются в фильтре
И если этот виджет применить для шаблона архива в Elementor, то при переходе по таксономиям (рубрики, теги) записи не фильтруются. Чтобы это исправить есть один хук.
В виджете, в поле Query Filter прописываем название пользовательского фильтра: my_super_filter (можно название любое).
В файл funtions.php для активной темы прописываем следующий код:
1 2 3 4 5 6 7 8 9 |
function my_super_filer_function($query_args){ $queried_object = get_queried_object(); // Получаем ID тега $term_id = $queried_object->term_id; // Получаем ID тега $term = get_term($term_id); // Получаем ID тега $query_args[$queried_object->taxonomy] = $term->slug; // фильтруем по таксономии и тегу через SLUG return $query_args; } add_filter('my_super_filter', 'my_super_filer_function'); |
И после этого записи фильтруются по рубрикам. Так же можно и фильтровать по тегам. Этот же хук можно применить для виджета — Записи, который входит в плагин Elementor Pro. Для этого во вкладке Запрос, есть поле ID запроса.
О работе этого хука я узнал из документации к AnyWhere Elementor Pro.