Jump to content

Featured Replies

Posted
comment_100272

Всем привет!

У меня возник вопрос (идея?) о пагинации блоков для IPS. К примеру: мне нужно вывести последние сообщения от определенного пользователя  на форуме.

Создаю rss ленту этого пользователя на форуме → эту ленту креплю к форуму/теме → создаю блок с последними сообщениями из этой темы/форума → в блоке указываю показать по 10 сообщений. По факту же у этого пользователя гораздо больше сообщений.

И вот тут бы прикрутить как-то пагинацию. Что бы можно было листать остальные сообщения этого пользователя. 

вот код шаблона последних сообщений:

Спойлер

{{if !empty( $comments ) }}
	<h3 class='ipsType_reset ipsWidget_title'>{$title}</h3>
	{{if $orientation == 'vertical'}}
		<div class='ipsWidget_inner ipsPad_half'>
			<ul class='ipsDataList ipsDataList_reducedSpacing'>
				{{foreach $comments as $comment}}
					<li class='ipsDataItem'>
						<div class='ipsDataItem_icon ipsPos_top'>
							{template="userPhoto" group="global" app="core" params="$comment->author(), 'tiny'"}
						</div>
						<div class='ipsDataItem_main'>
							<a href="{$comment->url()}" title='{lang="view_this_topic" sprintf="$comment->item()->title"}' class='ipsType_medium ipsType_break'>{wordbreak="$comment->item()->title"}</a><br>
							<p class='ipsType_reset ipsType_light ipsType_medium ipsType_blendLinks'>{lang="byline_nodate" htmlsprintf="$comment->author()->link()"} &middot; <a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->pid ) )}' class='ipsType_blendLinks'>{$comment->dateLine()|raw}</a></p>
							<div class='ipsType_medium ipsType_textBlock ipsType_richText ipsType_break ipsContained ipsSpacer_top ipsSpacer_half' data-ipsTruncate data-ipsTruncate-type='remove' data-ipsTruncate-size='{{if $orientation == 'vertical'}}6 lines{{else}}2 lines{{endif}}'>
								{$comment->truncated( true )|raw}
							</div>
						</div>
					</li>
				{{endforeach}}
			</ul>
		</div>
	{{else}}
		<div class='ipsWidget_inner'>
			<ul class='ipsDataList'>
				{{foreach $comments as $comment}}
					<li class='ipsDataItem ipsClearfix'>
						<div class='ipsComment_header ipsPhotoPanel ipsPhotoPanel_mini'>
							{template="userPhoto" app="core" group="global" params="$comment->author(), 'mini', $comment->warningRef()"}
							<div>
								<p class='ipsPos_right ipsType_reset ipsType_blendLinks'>
									<a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->pid ) )}' data-ipsTooltip title='{lang="share_this_comment"}' data-ipsMenu data-ipsMenu-closeOnClick='false' id='elShareComment_{$comment->pid}' data-role='shareComment'><i class='fa fa-share-alt'></i></a>
								</p>
								<h3 class='ipsComment_author ipsType_blendLinks'>
									<strong class='ipsType_normal'>{template="userLink" app="core" group="global" params="$comment->author(), $comment->warningRef()"}</strong>
									{template="reputationBadge" group="global" app="core" params="$comment->author()"}
								</h3>
								<p class='ipsComment_meta ipsType_light ipsType_medium'>
									<a href='{$comment->item()->url()->setQueryString( array( 'do' => 'findComment', 'comment' => $comment->pid ) )}' class='ipsType_blendLinks'>{$comment->dateLine()|raw}</a>
									{{if $comment->editLine()}}
										({lang="edited_lc"})
									{{endif}}
									{{if $comment->hidden()}}
										&middot; {$comment->hiddenBlurb()}
									{{endif}}
									{{if $comment instanceof \IPS\Content\ReportCenter and !\IPS\Member::loggedIn()->group['gbw_no_report'] and $comment->hidden() !== 1 }}
										&middot; <a href='{$comment->url('report')}' data-ipsDialog data-ipsDialog-remoteSubmit data-ipsDialog-size='medium' data-ipsDialog-flashMessage='{lang="report_submit_success"}' data-ipsDialog-title="{lang="report"}" data-action='reportComment' title='{lang="report_content"}'>{lang="report"}</a>
									{{endif}}
								</p>
					
								{{if member.modPermission('mod_see_warn') and $comment->warning}}
									{template="commentWarned" group="global" app="core" params="$comment"}
								{{endif}}
							</div>
						</div>

						<div class='ipsPad ipsClearfix'>
							<a href="{$comment->url()}" title='{lang="view_this_topic" sprintf="$comment->item()->title"}' class='ipsDataItem_title ipsType_break'>{wordbreak="$comment->item()->title"}</a><br>
							<div data-role='commentContent' class='ipsType_normal ipsType_richText ipsType_break ipsContained' data-controller='core.front.core.lightboxedImages'>
								{{if $comment->hidden() === 1 && $comment->author()->member_id == \IPS\Member::loggedIn()->member_id}}
									<strong class='ipsType_medium ipsType_warning'><i class='fa fa-info-circle'></i> {lang="comment_awaiting_approval"}</strong>
								{{endif}}
								{$comment->content()|raw}
								
								{{if $comment->editLine()}}
									{$comment->editLine()|raw}
								{{endif}}
							</div>
							
							{{if $comment->hidden() !== 1 && $comment instanceof \IPS\Content\Reputation and settings.reputation_enabled}}
								{template="reputation" group="global" app="core" params="$comment, 'ipsPos_right ipsResponsive_noFloat'"}
							{{endif}}
						</div>
					</li>
				{{endforeach}}
			</ul>
		</div>
	{{endif}}
{{endif}}

 

Может у кого есть опыт подобного или знания в таком направлении? Или же есть какое-то решение в данном вопросе?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.