Разработка Плагина - Wp_Query С Tax_Query, Сортировка По Наибольшему Количеству Совпадений'

  • Автор темы Dick Chase
  • Обновлено
  • 21, Oct 2024
  • #1
;

ТЛ;ДР:
Как я могу отсортировать

 tax_query 
based on how many 'matches' there are on the found_posts набор. Кроме того, как я могу добавить больше сообщений, если posts_per_page is not met due to the found_posts добавлен?


Полная история:
Всем привет,

Я довольно новичок в pre_get_posts editing, therefore this question. I've checked out multiple posts already but can't seem to find the fitting answer.

Я нахожусь в ситуации, когда я продлеваю свое pre_get_posts in the posts_per_page крюк. Здесь я добавляю cat => 4 to first receive posts that are in certain categories OR contain certain tags. This is (the interesting part of) the code I use in $extend = [ [ 'relation' => 'OR', [ 'taxonomy' => 'category', 'field' => 'term_id', 'terms' => [1, 2, 3], 'include_children' => false ], [ 'taxonomy' => 'post_tag', 'field' => 'term_id', 'terms' => [6, 7, 8], ] ] ]; $query->set('tax_query', $extend); :

pre_get_posts

Что на самом деле дает мне те результаты, которые я хочу. На основе исходного запроса, который имеет tax_query , I only receive posts that have: - Category 4, AND; - Either category 1/2/3 OR tag 6/7/8

Каков желаемый эффект. Однако проблема возникает, когда запрос не возвращает достаточно результатов.

Например: pre_get_posts is set to 5 for example, and after the WP_Query перехватите запрос, который возвращает только 3 сообщения. Если это произойдет, я хотел бы добавить еще 2 сообщения, чтобы заполнить их до 5. Эти сообщения не обязательно должны соответствовать WP_Query tax_query, but just the original query_vars. I've managed to get this working with another tax_query крючок, с помощью которого я проверяю, сколько постов у меня уже есть и достаточно ли этого для удовлетворения posts_per_page var. If it does not, it'll search for more posts and add those.

Я не уверен, реализуется ли tax_query hook is the way to go here, as I'd like to sort the posts based on how many 'matches' they have in the WP_Query сначала, а затем добавьте другие сообщения (которые не совпадают) в конец, чтобы сообщения с категорией или тегом в налоговом запросе отображались первыми.

Кто-нибудь еще сталкивался с этим раньше?

Жду любой помощи, спасибо большое!

#разработка плагина #wp-запрос #заказ #налоговый-запрос

Dick Chase


Рег
26 Jun, 2010

Тем
78

Постов
184

Баллов
584
Похожие темы Дата