diff --git a/ext/tag_list/main.php b/ext/tag_list/main.php index 1be00b33..c736d6ed 100644 --- a/ext/tag_list/main.php +++ b/ext/tag_list/main.php @@ -497,6 +497,8 @@ class TagList extends Extension { private function add_refine_block(Page $page, array $search) { global $database, $config; + if(count($search) > 5) return; + $wild_tags = $search; $str_search = Tag::implode($search); $related_tags = $database->cache->get("related_tags:$str_search"); @@ -509,7 +511,7 @@ class TagList extends Extension { foreach($wild_tags as $tag) { $tag = str_replace("*", "%", $tag); $tag = str_replace("?", "_", $tag); - $tag_ids = $database->get_col("SELECT id FROM tags WHERE tag LIKE :tag", array("tag"=>$tag)); + $tag_ids = $database->get_col("SELECT id FROM tags WHERE tag LIKE :tag AND count < 25000", array("tag"=>$tag)); // $search_tags = array_merge($search_tags, // $database->get_col("SELECT tag FROM tags WHERE tag LIKE :tag", array("tag"=>$tag))); $tag_id_array = array_merge($tag_id_array, $tag_ids); @@ -518,6 +520,8 @@ class TagList extends Extension { } $tag_id_list = join(', ', $tag_id_array); + if(count($tag_id_array) > 5) return; + if($tags_ok) { $query = " SELECT t2.tag AS tag, COUNT(it2.image_id) AS calc_count