Перейти к публикации

Последние темы форума на главной


Рекомендованные сообщения

Как последние темы форума (список) вывести на главной странице сайта на ДЛЕ?

(форум phpbb)

Т.е.

"Последние темы форума"

-------------

-------------

-------------

-------------

-------------

Ссылка на сообщение
Поделиться на других сайтах

Код модуля:

<?php 


if(!defined('DATALIFEENGINE')) 

{ 

  die("Hacking attempt!"); 

} 


function lasttopicphpBB() 

{ 

Global $db; 


//========== ОТРЕДАКТИРУЙТЕ ЭТИ ДАННЫЕ ====================== 

$phpBB_mysql_data_base_name="1"; 

$phpBB_mysql_host="1"; 

$phpBB_mysql_user="1"; 

$phpBB_mysql_password="1"; 

$phpBB_mysql_db_prefix="1"; 

$phpBB_site="/forum"; //адрес сайта форума (без / в конце) 


$koli4estvo_tem=10; //кол-во выводимых тем 

$dlina_temi=23; //кол-во символов в выводимом заголовке 


/*формат выводимого заголовка. 

{Full_title} - полное название темы 

{URL_to_post} - ссылка на последний пост темы 

{Short_title} - название темы, обрезанное до $dlina_temi символов 

{User_name} - имя последнего написавшего пост в теме 

{Date} - дата и время последнего поста 


{ReplyCount} - количество ответов 

{Views} - количество просмотров 

*/ 

//$format_stroki.="<li><a title='{Full_title}' href='{URL_to_post}'>{Short_title}</a> от <b>{User_name}</b> {Date} [{ReplyCount}|{Views}]</li>"; 

$format_stroki.="<li style='padding-bottom:10px'><a title='{Full_title}' href='{URL_to_post}'>{Short_title}</a><br /><font size='-3'>{Date} <b>{User_name}</b></font></li>"; 


//========== Конец редактирования =========================== 


$db->connect($phpBB_mysql_user, $phpBB_mysql_password, $phpBB_mysql_data_base_name, $phpBB_mysql_host); 


	$query_str = 'SELECT f.*, p.*, pt.*, t.*, u.* 

			FROM 111_topics AS t, 111_users AS u, 111_posts_text AS pt, 111_posts AS p, 111_forums AS f 

			WHERE t.topic_last_post_id = pt.post_id AND t.topic_last_post_id = p.post_id AND t.forum_id = f.forum_id AND u.user_id = p.poster_id AND f.auth_view = 0

			ORDER BY p.post_time DESC 

			LIMIT 0,'.$koli4estvo_tem; 

	$sql_12354 = $db->query($query_str); 


while ($row = mysql_fetch_array($sql_12354, MYSQL_ASSOC)) 

{ 


   $format_stroki_user_profile='<a href='.$phpBB_site.'/profile.php?mode=viewprofile&u='.$row['poster_id'].'>'.$row["username"].'</a>'; 


   switch (date("d.m.y",$row["post_time"])): 

	  case date("d.m.y"): 

		   $day=date("cегодня в H:i",$row["post_time"]);   //пост был написан сегодня 

		  break; 

	  case date("d.m.y",time()-86400): 

			$day=date("вчера в H:i",$row["post_time"]);	  //пост был написан вчера 

		  break; 

	   default: 

		  $day=date("d.m.y H:i",$row["post_time"]);	  //пост был написан более двух дней назад 

	endswitch; 


   $title1=$row['topic_title']; 

   if (strlen($title1) > $dlina_temi) 

	  $title2 = substr ($title1, 0, $dlina_temi)." ...";	//если длина темы больше $dlina_temi символов, то обрезаем 

   else 

	  $title2 = $title1;						   //если меньше или равна, то оставляем 


   $replycount=$row["topic_replies"]; 

   $views=$row['topic_views']; 


   $zagolovok=preg_replace('/{Full_title}/',$title1, $format_stroki); 

   $zagolovok=preg_replace('/{URL_to_post}/',$phpBB_site.'/viewtopic.php?p='.$row["post_id"].'#'.$row["post_id"], $zagolovok); 

   $zagolovok=preg_replace('/{Short_title}/',$title2, $zagolovok); 

   $zagolovok=preg_replace('/{User_name}/',$format_stroki_user_profile, $zagolovok); 

   $zagolovok=preg_replace('/{Date}/',$day, $zagolovok); 


   $zagolovok=preg_replace('/{ReplyCount}/',$replycount, $zagolovok); 

   $zagolovok=preg_replace('/{Views}/',$views, $zagolovok); 


   $asdaa.=$zagolovok; 

} 

   mysql_free_result($sql_12354); 

   return $asdaa; 

} 

$lasttopicphpbb=lasttopicphpbb(); 

?>
111 заменить на префикс базы. Тег для шаблона
{lasttopicphpbb}

Изменено пользователем Quate
Ссылка на сообщение
Поделиться на других сайтах
  • 5 месяцев спустя...

Ребята, подобный мод лежит на 4dle.ru, однако при наличии версии DLE 7.3/7.5 и phpBB 3.0.4 - он не работает. Никто не пробовал делать корректировку мода?!

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...