admin管理员组文章数量:1425820
I'm getting the most used tags in the 1 day interval and everything works fine but how do I add the limitation to get tags with at least 5 posts and order them by counting?
Actual code:
$term_ids = $wpdb->get_col("
SELECT term_id FROM $wpdb->term_taxonomy
INNER JOIN $wpdb->term_relationships ON $wpdb->term_taxonomy.term_taxonomy_id=$wpdb->term_relationships.term_taxonomy_id
INNER JOIN $wpdb->posts ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
WHERE DATE_SUB(CURDATE(), INTERVAL 1 DAY) <= $wpdb->posts.post_date"
);
$tags = get_tags(array(
'orderby' => 'count',
'order' => 'DESC',
'number' => 10,
'include' => $term_ids,
));
foreach ( (array) $tags as $tag ) {
echo '<li><a href="' . get_tag_link ($tag->term_id) . '" rel="tag">' . $tag->name . '</a></li>';
}
Thanks in advance!
I'm getting the most used tags in the 1 day interval and everything works fine but how do I add the limitation to get tags with at least 5 posts and order them by counting?
Actual code:
$term_ids = $wpdb->get_col("
SELECT term_id FROM $wpdb->term_taxonomy
INNER JOIN $wpdb->term_relationships ON $wpdb->term_taxonomy.term_taxonomy_id=$wpdb->term_relationships.term_taxonomy_id
INNER JOIN $wpdb->posts ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
WHERE DATE_SUB(CURDATE(), INTERVAL 1 DAY) <= $wpdb->posts.post_date"
);
$tags = get_tags(array(
'orderby' => 'count',
'order' => 'DESC',
'number' => 10,
'include' => $term_ids,
));
foreach ( (array) $tags as $tag ) {
echo '<li><a href="' . get_tag_link ($tag->term_id) . '" rel="tag">' . $tag->name . '</a></li>';
}
Thanks in advance!
Share Improve this question edited May 30, 2019 at 21:27 Alex asked May 30, 2019 at 20:24 AlexAlex 155 bronze badges1 Answer
Reset to default 0I found a solution!:
$term_ids = $wpdb->get_col("
SELECT term_id FROM $wpdb->term_taxonomy
INNER JOIN $wpdb->term_relationships ON $wpdb->term_taxonomy.term_taxonomy_id=$wpdb->term_relationships.term_taxonomy_id
INNER JOIN $wpdb->posts ON $wpdb->posts.ID = $wpdb->term_relationships.object_id
WHERE DATE_SUB(CURDATE(), INTERVAL 1 DAY) <= $wpdb->posts.post_date"
);
$tags = get_tags(array(
'orderby' => 'count',
'order' => 'DESC',
'number' => '10', // <-- maximum number of tags
'include' => $term_ids,
'fields' => 'ids'
));
foreach($tags as $tag) {
$term = get_term_by('id', $tag, 'post_tag');
if ($term->count < 5) { // <-- minimum number of posts
$index = array_search($term->term_id, $tags);
unset($tags[$index]);
}
}
foreach ( (array) $tags as $tag_result ) {
$term = get_term_by('id', $tag_result, 'post_tag');
echo '<li><a href="' . get_tag_link ($term->term_id) . '" rel="tag">' . $term->name . '</a></li>';
}
本文标签: Top tags with minimum number of posts
版权声明:本文标题:Top tags with minimum number of posts 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1745446749a2658697.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论