Мод последних топиков из форума на главную для SocialEngine
Данный мод выводит последние десять топиков из форума.
Установка:
Установка:
1. Откройте include/class_forum.php найдите:
// THIS METHOD LISTS ALL TOPICS IN A FORUM
// INPUT: $forum_id REPRESENTING THE FORUM ID OF THE FORUM TO RETRIEVE TOPICS FROM
// $start REPRESENTING THE TOPIC TO START WITH
// $limit REPRESENTING THE NUMBER OF TOPICS TO RETURN
// OUTPUT: AN ARRAY OF TOPIC INFORMATION
function forum_topic_list($forum_id, $start, $limit)
function new_topic_list($forum_id, $limit) { // if $forum_id=0, all forums
global $database, $user;
if($forum_id) $where="WHERE forumtopic_forum_id='$forum_id'";
// GET TOPICS
После этого вставьте:
$gettopics = $database->database_query("SELECT se_forumtopics.forumtopic_id, se_forumtopics.forumtopic_subject, se_forumtopics.forumtopic_date, se_forumtopics.forumtopic_forum_id,se_forumtopics.forumtopic_creatoruser_id,se_forumtopics.forumtopic_totalreplies, se_forumtopics.forumtopic_views, se_users.user_id, se_users.user_username, se_users.user_fname, se_users.user_lname, se_users.user_photo FROM se_forumtopics LEFT JOIN se_users ON se_forumtopics.forumtopic_creatoruser_id=se_users.user_id {$where} ORDER BY se_forumtopics.forumtopic_id DESC LIMIT $limit");
$forumtopic_array = Array();
while( $newtopics = $database->database_fetch_assoc($gettopics) )
$forumtopic_array[]=$newtopics;
return $forumtopic_array;
}
2. Откройте home.php найдите:
// ASSIGN SMARTY VARIABLES AND INCLUDE FOOTER
После этого добавьте:
$forum = new se_forum();
$topic_limit = 10; //количество выводимых топиков
$topic_array = $forum->new_topic_list(0,$topic_limit); // Установить 0 для вывода из всех форумов или поменяйте на ID определенного форума из которого хотите вывести топики
$smarty->assign('topics', $topic_array);
3. Открыть home.tpl и в том месте где вам нужно вставить код:
{* NEW TOPICS FROM FORUMS *}
{section name=topic_loop loop=$topics max=10}
<div style="'border-bottom:" solid="">
<div style="float:left">[img]./images/icons/disscusion.jpg[/img] </div>
<div>
<div style="margin-top:3px;">
<div style="'float:left;"> [url=forum_topic.php?forum_id={$topics[topic_loop].forumtopic_forum_id}&topic_id={$topics[topic_loop].forumtopic_id}]{$topics[topic_loop].forumtopic_subject}[/url]
{capture assign="topic_poster"} [url='{$url-]url_create("profile", $topics[topic_loop].user_username)}'> {$topics[topic_loop].user_fname} {$topics[topic_loop].user_lname}[/url]{/capture} {lang_sprintf id=6000095 1=$topic_poster}
{assign var='topic_date_basic' value=$datetime->time_since($topics[topic_loop].forumtopic_date)}
- {lang_sprintf id=$topic_date_basic[0] 1=$topic_date_basic[1]}</div>
<div style="float:right"> {lang_print id=1000065} {$topics[topic_loop].forumtopic_views} | {lang_print id=69658061} {$topics[topic_loop].forumtopic_totalreplies} </div>
<div class="space-line"></div>
</div>
</div>
</div>
{/section}
// THIS METHOD LISTS ALL TOPICS IN A FORUM
// INPUT: $forum_id REPRESENTING THE FORUM ID OF THE FORUM TO RETRIEVE TOPICS FROM
// $start REPRESENTING THE TOPIC TO START WITH
// $limit REPRESENTING THE NUMBER OF TOPICS TO RETURN
// OUTPUT: AN ARRAY OF TOPIC INFORMATION
function forum_topic_list($forum_id, $start, $limit)
function new_topic_list($forum_id, $limit) { // if $forum_id=0, all forums
global $database, $user;
if($forum_id) $where="WHERE forumtopic_forum_id='$forum_id'";
// GET TOPICS
После этого вставьте:
$gettopics = $database->database_query("SELECT se_forumtopics.forumtopic_id, se_forumtopics.forumtopic_subject, se_forumtopics.forumtopic_date, se_forumtopics.forumtopic_forum_id,se_forumtopics.forumtopic_creatoruser_id,se_forumtopics.forumtopic_totalreplies, se_forumtopics.forumtopic_views, se_users.user_id, se_users.user_username, se_users.user_fname, se_users.user_lname, se_users.user_photo FROM se_forumtopics LEFT JOIN se_users ON se_forumtopics.forumtopic_creatoruser_id=se_users.user_id {$where} ORDER BY se_forumtopics.forumtopic_id DESC LIMIT $limit");
$forumtopic_array = Array();
while( $newtopics = $database->database_fetch_assoc($gettopics) )
$forumtopic_array[]=$newtopics;
return $forumtopic_array;
}
2. Откройте home.php найдите:
// ASSIGN SMARTY VARIABLES AND INCLUDE FOOTER
После этого добавьте:
$forum = new se_forum();
$topic_limit = 10; //количество выводимых топиков
$topic_array = $forum->new_topic_list(0,$topic_limit); // Установить 0 для вывода из всех форумов или поменяйте на ID определенного форума из которого хотите вывести топики
$smarty->assign('topics', $topic_array);
3. Открыть home.tpl и в том месте где вам нужно вставить код:
{* NEW TOPICS FROM FORUMS *}
{section name=topic_loop loop=$topics max=10}
<div style="'border-bottom:" solid="">
<div style="float:left">[img]./images/icons/disscusion.jpg[/img] </div>
<div>
<div style="margin-top:3px;">
<div style="'float:left;"> [url=forum_topic.php?forum_id={$topics[topic_loop].forumtopic_forum_id}&topic_id={$topics[topic_loop].forumtopic_id}]{$topics[topic_loop].forumtopic_subject}[/url]
{capture assign="topic_poster"} [url='{$url-]url_create("profile", $topics[topic_loop].user_username)}'> {$topics[topic_loop].user_fname} {$topics[topic_loop].user_lname}[/url]{/capture} {lang_sprintf id=6000095 1=$topic_poster}
{assign var='topic_date_basic' value=$datetime->time_since($topics[topic_loop].forumtopic_date)}
- {lang_sprintf id=$topic_date_basic[0] 1=$topic_date_basic[1]}</div>
<div style="float:right"> {lang_print id=1000065} {$topics[topic_loop].forumtopic_views} | {lang_print id=69658061} {$topics[topic_loop].forumtopic_totalreplies} </div>
<div class="space-line"></div>
</div>
</div>
</div>
{/section}