вопрос
Хочется вывести количество новостей с определённого тега.
в modules/tagscloud.php за количество новостей отвечает $value['count']
вот как можно $value['count'] переместить в /engine/engine.php чтоб оно показывало то же количество новостей только уже в $metatags['description'] или $nam_e = stripslashes($tag)
пример:
в modules/tagscloud.php за количество новостей отвечает $value['count']
$tags[] = "<a href=\"".$config['http_home_url']."tags/".urlencode($value['tag'])."/\" class=\"{$value['size']}\" title=\"".$lang['tags_count']." ".$value['count']."\">".$value['tag']."</a>";
вот как можно $value['count'] переместить в /engine/engine.php чтоб оно показывало то же количество новостей только уже в $metatags['description'] или $nam_e = stripslashes($tag)
пример:
elseif ($do == 'tags') { $nam_e = stripslashes($tag). '60 новостей';
$metatags['description'] = Смотрите 60 funny постов;
}
возможно я не правильно понял, но все таки немного иной способ:
1) В файле index.php, находим строку:
Перед этой строки добавляем :
2) Открываем файл ./engine/modules/addnews.php
Находим строку :
Перед этой строки добавляем :
3) Открываем файл /engine/ajax/editnews.php
Ищем строку:
После этой строки добавляем :
4) Теперь ставим в шаблоне теги на количество новостей.
Тег выглядит так: “{count_categ _2}” (без кавычек), где 2 – это id категории.
К примеру шаблон main.tpl, где и находиться меню навигации, будет выглядит так:
1) В файле index.php, находим строку:
$tpl->set ( '{AJAX}', $ajax );
Перед этой строки добавляем :
$count_news = dle_cache( "count_news_of_category", $config[’skin’] );
if( !$count_news )
{
//кэш с количеством новостей пуст
$sql_result = $db->query("select ct.id,
(select count(*) from ". PREFIX ."_post ps where ps.category = ct.id AND (DATE_FORMAT(date, '%Y%m%d')=CURDATE()) AND approve = '1') as new_,
(select count(*) from ". PREFIX ."_post ps where ps.category = ct.id AND approve = '1') as allnews_
from ". PREFIX ."_category ct"
);
$count_news_of_category = '';
while($row = $db->get_row($sql_result))
{
$t = $row['new_'].'/'.$row['allnews_'];
$tpl->set('{count_categ_'.$row['id'].'}', $t);
$count_news_of_category .= $row['id'].'#'.$t.'|';
}
/**В кэш **/
create_cache( 'count_news_of_category', $count_news_of_category);
$db->free();
}
else
{
//достанем количество новостей из кэша
$arr_newscount = explode('|', $count_news);
for ($i = 0; $i <= count($arr_newscount) - 2; $i++)
{
$arr_onenews = explode('#', $arr_newscount[$i]);
$tpl->set('{count_categ_'.$arr_onenews[0].'}', $arr_onenews[1]);
}
}
2) Открываем файл ./engine/modules/addnews.php
Находим строку :
if( $config['allow_alt_url'] == "yes" )
Перед этой строки добавляем :
clear_cache('count_news_of_category');
3) Открываем файл /engine/ajax/editnews.php
Ищем строку:
clear_cache( 'news_' );
После этой строки добавляем :
clear_cache('count_news_of_category');
4) Теперь ставим в шаблоне теги на количество новостей.
Тег выглядит так: “{count_categ _2}” (без кавычек), где 2 – это id категории.
К примеру шаблон main.tpl, где и находиться меню навигации, будет выглядит так:
Софт {count_categ _2}