Я надеюсь, что вы можете помочь мне с проблемой, которую я не могу решить. Я исправляю поиск на моем WordPress-сайте, чтобы показать мне все сообщения, в которых появляется автор, в качестве основного автора или соавтора.
case 'autores':
$authors = implode( ',', eco_search_authors( $_GET['s'] ) );
$query->set ( 'author', $authors );
break;
Приведенный выше код представляет фильтр, который я создал для поиска по автору.
/**
* Search for authors.
*
* @param string $search_author Expression to look for
* @return array Array of author IDs
*/
function eco_search_authors( $search_author ) {
$args = array (
'search' => '*'. esc_attr( $search_author ) . '*',
'fields' => 'ID',
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'first_name',
'value' => $search_author,
'compare' => 'LIKE'
),
array(
'key' => 'last_name',
'value' => $search_author,
'compare' => 'LIKE'
),
array(
'key' => 'description',
'value' => $search_author ,
'compare' => 'LIKE'
)
)
);
// Create the WP_User_Query object
$wp_user_query = new WP_User_Query($args);
// Get the results
$found_authors = $wp_user_query->get_results();
return $found_authors;
}
Эта часть кода является функцией, созданной для поиска статей с автором, который был найден.
В результате поиска отображаются не все статьи разыскиваемого автора, а также статьи, в которых один и тот же автор выступает в качестве соавтора.
Вопрос : Кто-нибудь когда-нибудь сталкивался с этой проблемой?