Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Как вывести tags для определенной категории?

Как вывести tags для определенной категории?


     09.12.2017    теги    Общие вопросы, Общие вопросы по вёрстке, Шаблоны (TPL)    685

вопрос
Как сделать так, чтобы в определенной категории выводились теги которые заполнены в новостях этой рубрики, а не все подряд?

Другими словами в shortstory хочу вывести только тег из этой рубрики.

Ответил: Sander


Открыть файл engine/modules/tagscloud.php
Найти строку:
$tpl->result['tags_cloud'] = dle_cache("tagscloud", $config['skin']);

Заменить на:
$tpl->result['tags_cloud'] = dle_cache("tagscloud", $config['skin'] . $category_id);


Найти строку:
	$db->query("SELECT tag, COUNT(*) AS count FROM " . PREFIX . "_tags GROUP BY tag ORDER BY count DESC LIMIT 0,{$config['tags_number']}");

Заменить на:
	if ($category_id) {
		$db->query("SELECT t.tag, COUNT(*) AS count
			FROM " . PREFIX . "_tags t
			INNER JOIN ".PREFIX."_post p ON p.id = t.news_id AND p.approve AND p.category regexp '[[:<:]](" . get_sub_cats ( $category_id ) . ")[[:>:]]'
			GROUP BY tag
			ORDER BY count DESC
			LIMIT 0,{$config['tags_number']}
		");
	} else {
		$db->query("SELECT tag, COUNT(*) AS count FROM " . PREFIX . "_tags GROUP BY tag ORDER BY count DESC LIMIT 0,{$config['tags_number']}");
	}


Найти строку:
	create_cache ("tagscloud", $tpl->result['tags_cloud'], $config['skin']);

Заменить на:
	create_cache ("tagscloud", $tpl->result['tags_cloud'], $config['skin'] . $category_id);


Кошелек для благодарностей не пишу, потому что один фиг никто никогда ничего не скидывает :(
Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх