Перейти к контенту

Новости форума на главной 1.3


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

Вообще такое уже реализовано стандартно через ssi но уж очень тупо сделано.

Вообщем я просто решил сделать что-то похожее, но уже с разбивкой на страницы при большом числе новых тем с новостями. И чтобы новости сразу заносились в календарь конечно =)

Только вот столкнулся с такой проблемкой.

Вывожу новости через ssi.php, там в ssi у меня контроль показа новостей(из топика) на главной идет вот таким кодом:

...
$parser = new post_parser();

	$perpage = intval($ibforums->input['show']) > 0 ? intval($ibforums->input['show']) : 10;

	$perpage = ( $perpage > $max_show ) ? $max_show : $perpage;

	// Load the template...
...

а мне нужно чтобы можно было выводить не только 10 последних новостей, а и чтобы если из всего скажем 30, то чтобы они разбились на 3 страницы, 10 новостей на каждую. Как этого добиться?

 

 

 

 

 

Если непонятно объяснил, то вот полный код стандартного вывода новостей. Нужно чтобы новости на главной разбивались на страницы и выводили на каждую определенное кол-во новостей.

 

function do_news()
{
	global $DB, $ibforums, $root_path, $templates_dir, $std, $max_show;

	if ( (! $ibforums->vars['news_forum_id']) or ($ibforums->vars['news_forum_id'] == "" ) )
	{
			fatal_error("No news forum assigned");
	}

	require $root_path."sources/lib/post_parser.php";

	$parser = new post_parser();

	$perpage = intval($ibforums->input['show']) > 0 ? intval($ibforums->input['show']) : 10;

	$perpage = ( $perpage > $max_show ) ? $max_show : $perpage;

	// Load the template...

	$template = load_template("news.html");

	$to_echo = "";

	// Get the topics, member info and other stuff

	$DB->query("SELECT m.name as member_name, m.id as member_id,m.title as member_title, m.avatar, m.avatar_size, m.posts, t.*, p.*, g.g_dohtml, f.use_html
				FROM ibf_topics t
						LEFT JOIN ibf_posts p ON (p.new_topic=1 AND p.topic_id=t.tid)
						LEFT JOIN ibf_members m ON (m.id=t.starter_id)
						LEFT JOIN ibf_groups g ON (g.g_id=m.mgroup)
						LEFT JOIN ibf_forums f ON (t.forum_id=f.id)
						WHERE t.forum_id={$ibforums->vars['news_forum_id']} AND t.approved=1 ORDER BY t.tid DESC LIMIT 0, $perpage");

	if ( ! $DB->get_num_rows() )
	{
			fatal_error("Could not get the information from the database");
	}

	while ( $row = $DB->fetch_row() )
	{
			$row['post'] = str_replace( '<br>', '<br />', $row['post'] );
			$rt = $row['title'];
$ttt = strlen($rt);
$t1=$ttt+10;
$t2= (90 - $t1);

			$to_echo .= parse_template( $template,
																array (
																				 'profile_link'   => $ibforums->base_url."?act=Profile&CODE=03&MID=".$row['member_id'],
																				 'member_name'	=> $row['member_name'],
																				 'post_date'	  => $std->get_date( $row['start_date'], 'LONG' ),
																				 'topic_title'	=> $row['title'],
																				 'post'		   => $parser->post_db_parse($row['post'], ($row['use_html'] AND $row['g_dohtml']) ? 1 : 0 ),
																				 'comments'	   => $row['posts'],
																				 't1'			 => $t1,
																				 't2'			=>$t2,
																				 'view_all_link'  => $ibforums->base_url."?act=ST&f={$row['forum_id']}&t={$row['tid']}"
																		  )
																);
	}

	echo $to_echo;

	exit();

}

Вот собственно и первый трабл.

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

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

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

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

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.