Чтобы найти авторов, у которых есть сообщения в категории «WordPress», вы можете использовать различные методы в зависимости от настроек WordPress и имеющихся у вас инструментов. Вот несколько методов с примерами кода:
Метод 1: использование WP_Query
$args = array(
'category_name' => 'wordpress',
'posts_per_page' => -1,
'fields' => 'ids'
);
$query = new WP_Query($args);
if ($query->have_posts()) {
$author_ids = array();
while ($query->have_posts()) {
$query->the_post();
$author_ids[] = get_the_author_meta('ID');
}
$author_ids = array_unique($author_ids);
$authors = array();
foreach ($author_ids as $author_id) {
$authors[] = get_userdata($author_id)->display_name;
}
wp_reset_postdata();
}
Метод 2: использование SQL-запроса
global $wpdb;
$author_ids = $wpdb->get_col(
$wpdb->prepare(
"SELECT DISTINCT post_author FROM {$wpdb->posts}
INNER JOIN {$wpdb->term_relationships} ON ({$wpdb->posts}.ID = {$wpdb->term_relationships}.object_id)
INNER JOIN {$wpdb->term_taxonomy} ON ({$wpdb->term_relationships}.term_taxonomy_id = {$wpdb->term_taxonomy}.term_taxonomy_id)
INNER JOIN {$wpdb->terms} ON ({$wpdb->term_taxonomy}.term_id = {$wpdb->terms}.term_id)
WHERE {$wpdb->terms}.name = %s",
'wordpress'
)
);
$authors = array();
foreach ($author_ids as $author_id) {
$authors[] = get_userdata($author_id)->display_name;
}
Метод 3: использование плагина (например, Advanced Author Bio)
Если вы предпочитаете использовать плагин, вы можете установить и активировать плагин «Advanced Author Bio». Он предоставляет функцию aab_get_authors_by_category, которую можно использовать для поиска авторов по категориям.
$author_ids = aab_get_authors_by_category('wordpress');
$authors = array();
foreach ($author_ids as $author_id) {
$authors[] = get_userdata($author_id)->display_name;
}
Не забудьте заменить 'wordpress'на фактический ярлык категории, которую вы хотите найти.
Пример статьи в блоге:
Введение
При работе с WordPress вы можете столкнуться с ситуациями, когда вам необходимо найти авторов, написавших сообщения в определенной категории. В этой статье мы рассмотрим несколько методов выполнения этой задачи, приведя примеры кода для каждого метода.
Методы
-
Использование WP_Query: этот метод использует класс WP_Query для запроса сообщений в категории «WordPress» и получения соответствующей информации об авторе.
-
Использование SQL-запроса. Этот метод включает в себя создание специального SQL-запроса с использованием таблиц базы данных WordPress для получения идентификаторов авторов, связанных с сообщениями в категории «WordPress».
-
Использование плагина. Для тех, кто предпочитает подход на основе плагинов, мы можем использовать плагин, например «Advanced Author Bio», чтобы легко находить авторов по категориям.
Примеры кода
В статье представлены подробные примеры кода для каждого упомянутого выше метода, демонстрирующие, как получить авторов, написавших сообщения в категории «WordPress».
Заключение
Используя эти различные методы, вы можете эффективно находить авторов, которые внесли свой вклад в категорию «WordPress» на вашем сайте WordPress. Выберите метод, который лучше всего соответствует вашим потребностям, и внедрите его в свой проект, чтобы улучшить функциональность вашего сайта.