بوسیله این هک میتوانید مجموع کل مطالب هر موضوع و همچنین تعداد مطالب جدید اضافه شده در هر موضوع را در سایت به نمایش بگذارید. ( این هک از سیستم کش دیتالایف استفاده می کند. )
این هک برای نسخه های 10.x نوشته شده و برای نسخه های قبل از آموزش نمایش تعداد مطالب موضوعات سایت استفاده نمایید.
آموزش نصب
1. در نسخه های 10.3 و به قبل index.php و در نسخه های 10.4 و به بعد فایل engine/modules/main.php را ویرایش کنید و کد زیر را بیابید :
قبل از آن کد زیر را قرار دهید:
2. حال فایل engine/modules/addnews.php را ویرایش نمایید.
در نسخه های 10.1 و به قبل به دنبال کد زیر باشید :
و در نسخه های 10.2 و جدیدتر به دنبال کد زیر بگردید :
قبل از کد بالا ، کد زیر را اضافه نمایید:
3. و نهایتا فایل engine/ajax/editnews.php را ویرایش کرده و به دنبال کد زیر باشید :
قبل از کد بالا کد زیر را وارد نمایید :
4. با توجه به نوع قالب شما و طراحی آن، بوسیله تگ زیر میتوانید تعداد مطالب هر موضوع را به نمایش بگذارید:
به عنوان مثال :
4 آیدی موضوع اخبار هست که به کمک موضوعات خود سیستم دیتالایف انجین ساخته شده است.
5. با استفاده از HTML و CSS می توانید به زیبایی موضوعات خود بیفزایید.
موفق و موید باشید.
$tpl->set ( '{AJAX}', $ajax );
قبل از آن کد زیر را قرار دهید:
/*******************/
$count_news = dle_cache( "count_news_of_category", $config[’skin’] );if( !$count_news ){ //cache with the news is empty
$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['allnews_'].'/'.$row['new_']. '+)';
$tpl->set('{count_categ_'.$row['id'].'}', $t); $count_news_of_category .= $row['id'].'#'.$t.'|'; } /**To cache **/ create_cache( 'count_news_of_category', $count_news_of_category); $db->free();}else{ //taking number of news from cache
$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 را ویرایش نمایید.
در نسخه های 10.1 و به قبل به دنبال کد زیر باشید :
if( $config['allow_alt_url'] == "yes" )
و در نسخه های 10.2 و جدیدتر به دنبال کد زیر بگردید :
if( $config['allow_alt_url'] )
قبل از کد بالا ، کد زیر را اضافه نمایید:
clear_cache('count_news_of_category');
3. و نهایتا فایل engine/ajax/editnews.php را ویرایش کرده و به دنبال کد زیر باشید :
clear_cache( array( 'news_', 'rss', $cprefix ) );
قبل از کد بالا کد زیر را وارد نمایید :
clear_cache('count_news_of_category');
4. با توجه به نوع قالب شما و طراحی آن، بوسیله تگ زیر میتوانید تعداد مطالب هر موضوع را به نمایش بگذارید:
{count_categ_1}
به عنوان مثال :
<a href="/News/">اخبار <span>{count_categ_4}</span></a>
4 آیدی موضوع اخبار هست که به کمک موضوعات خود سیستم دیتالایف انجین ساخته شده است.
5. با استفاده از HTML و CSS می توانید به زیبایی موضوعات خود بیفزایید.
موفق و موید باشید.
سوالات متداول
در صورتیکه فقط می خواهید تعداد مطالب مرتبط با هر موضوع نشان داده شود در مرحله ی اول از کد زیر استفاده کنید :
1. در نسخه های 10.3 و به قبل index.php و در نسخه های 10.4 و به بعد فایل engine/modules/main.php را ویرایش کنید و کد زیر را بیابید :
قبل از آن کد زیر را قرار دهید:
1. در نسخه های 10.3 و به قبل index.php و در نسخه های 10.4 و به بعد فایل engine/modules/main.php را ویرایش کنید و کد زیر را بیابید :
$tpl->set ( '{AJAX}', $ajax );
قبل از آن کد زیر را قرار دهید:
/*******************/
$count_news = dle_cache( "count_news_of_category", $config[’skin’] );if( !$count_news ){ //cache with the news is empty
$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['allnews_'].' )';
$tpl->set('{count_categ_'.$row['id'].'}', $t); $count_news_of_category .= $row['id'].'#'.$t.'|'; } /**To cache **/ create_cache( 'count_news_of_category', $count_news_of_category); $db->free();}else{ //taking number of news from cache
$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]); }}
/*******************/