$sql составлен, а минимальноПодскажите что не так ...
DB()->fetch_*($sql)
нету. Запрос к базе не выполняется, в кеш ложатся пустые значения, из-за чего он не работает как минимум.'cccp_tile_count'.$start.$mode.$search
на 'cccp_tile_count'.'_'.$start.'_'.$mode.'_'.$search
- а то как по мне, достаточно велики шансы коллизий, когда под одним кешем будет записано несколько значений. А еще лучше 'cccp_tile_count_'.md5($start.$mode.$search)
- так точно все данные в кэше уникальные будут.