Jump to content

Порядок в виджете последних тем

Featured Replies

Posted
comment_89285

Разместил у себя виджет "Последние темы". Нужно чтобы порядок тем был не по времени создания темы, а по ее обновлению. Подскажите как сделать?

comment_89358

Разместил у себя виджет "Последние темы". Нужно чтобы порядок тем был не по времени создания темы, а по ее обновлению. Подскажите как сделать?

Хук предполагает парсер последних тем, а не последних сообщений. В хуке who we are есть парсер последних сообщений. 

 

comment_89374

Хук предполагает парсер последних тем, а не последних сообщений. 

И что? Тема не имеет даты последнего поста?

Разместил у себя виджет "Последние темы". Нужно чтобы порядок тем был не по времени создания темы, а по ее обновлению. Подскажите как сделать?

Почему не хотите использовать виджет "Customizable Topic Feed"? В нем есть опция сортировки.

comment_89434

Разместил у себя виджет "Последние темы". Нужно чтобы порядок тем был не по времени создания темы, а по ее обновлению. Подскажите как сделать?

Я этот хук поставил не только из-за последних сообщений, но и из-за блока с аватарками. Да, можно использовать штатный виджет

  • Author
comment_89454

И что? Тема не имеет даты последнего поста?

Почему не хотите использовать виджет "Customizable Topic Feed"? В нем есть опция сортировки.

его сейчас и использую, но тоже не айс! Хук выводит аватарку и имя автора темы а не последнего написавшего. Так что если не посмотреть на время, то и не поймешь что тема обновилась.

Хук последних сообщений, в котором можно удалить сам текст сообщения - станет почти тем, что надо, но он не выделяет жирным обновившуюся тему.

Думаю правильнее все таки последние темы допилить чтобы обновлялись по дате последнего поста, только вот не знаю как это сделать.

 

Edited by Catalo

comment_89455

его сейчас и использую, но тоже не айс! Хук выводит аватарку и имя автора темы а не последнего написавшего.

Так об этом не было ничего написано в стартовом посте

Думаю правильнее все таки последние темы допилить чтобы обновлялись по дате последнего поста, только вот не знаю как это сделать.

В нем тоже нет информации об авторе последнего поста. Только счетчик постов обновляется.

Хук последних сообщений, в котором можно удалить сам текст сообщения - станет почти тем, что надо, но он не выделяет жирным обновившуюся тему.

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

  • Author
comment_89456

а ну да, третье не подходит.

Так об этом не было ничего написано в стартовом посте

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

 

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

не подумал об этом, значит не подходит в качестве переделки под "последние темы"..

В нем тоже нет информации об авторе последнего поста. Только счетчик постов обновляется.

точно, увы((

Так что же делать, может подскажите как допилить? думаю не только я воспользуюсь этим, многим пригодится!

comment_89461

Так что же делать, может подскажите как допилить? думаю не только я воспользуюсь этим, многим пригодится!

Переделать виджет, о котором я написал выше.

Аватарку и ник поменять проще всего.

  • Author
comment_89596

Если я правильно понимаю, за вывод виджета "Настраиваемый список тем" отвечает шаблон topicFeed.

В данном шаблоне есть строки с params="$topic->author()

Видимо это и нужно поменять только подскажите, уважаемые знатоки, на что?

comment_89603

Если я правильно понимаю, за вывод виджета "Настраиваемый список тем" отвечает шаблон topicFeed.

В данном шаблоне есть строки с params="$topic->author()

Видимо это и нужно поменять только подскажите, уважаемые знатоки, на что?

$topic->lastCommenter()

 

  • Author
comment_89607

помогло, но осталось еще поменять время создания темы на время последнего сообщения.

Думаю что lang="topic_started_date" нужно поменять, подскажите на что?

comment_89609

помогло, но осталось еще поменять время создания темы на время последнего сообщения.

Думаю что lang="topic_started_date" нужно поменять, подскажите на что?

date_replied

 

  • Author
comment_89611

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

{{if !empty( $topics ) }}
	<h3 class='ipsWidget_title ipsType_reset'>{lang="block_topicFeed_title"}</h3>

	{{if $orientation == 'vertical'}}
		<div class='ipsPad_half ipsWidget_inner'>
			<ul class='ipsDataList ipsDataList_reducedSpacing'>
				{{foreach $topics as $topic}}
					<li class='ipsDataItem{{if $topic->unread()}} ipsDataItem_unread{{endif}}{{if $topic->hidden()}} ipsModerated{{endif}}'>
						<div class='ipsDataItem_icon ipsPos_top'>
							{template="userPhoto" group="global" app="core" params="$topic->lastCommenter(), 'tiny'"}
						</div>
						<div class='ipsDataItem_main'>
							<div class="ipsCommentCount ipsPos_right {{if ( $topic->posts - 1 ) === 0}}ipsFaded{{endif}}" data-ipsTooltip title='{lang="replies_number" pluralize="$topic->posts - 1"}'>{expression="$topic->posts - 1"}</div>
							<a href="{$topic->url()->setQueryString( 'do', 'getLastComment' )}" title='{lang="view_this_topic" sprintf="$topic->title"}' class='ipsDataItem_title ipsType_break'>{wordbreak="$topic->title"}</a>
							{{if $topic->mapped('featured') || $topic->hidden() === -1 || $topic->hidden() === 1}}
								<span>
									{{if $topic->hidden() === -1}}
										<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{$topic->hiddenBlurb()}'><i class='fa fa-eye-slash'></i></span>
									{{elseif $topic->hidden() === 1}}
										<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning" data-ipsTooltip title='{lang="pending_approval"}'><i class='fa fa-warning'></i></span>
									{{endif}}
									{{if $topic->mapped('featured')}}
										<span class="ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive" data-ipsTooltip title='{lang="featured"}'><i class='fa fa-star'></i></span>
									{{endif}}
								</span>
							{{endif}}
							<br>
							<span class='ipsType_light ipsType_small'>{lang="byline_nodate" htmlsprintf="$topic->lastCommenter()->link()"} &middot; {lang="date_replied" htmlsprintf="\IPS\DateTime::ts( $topic->mapped('date') )->html()"}</span>
						</div>
					</li>
				{{endforeach}}
			</ul>
		</div>
	{{else}}
		<div class='ipsWidget_inner'>
			<ul class='ipsDataList'>
				{{foreach $topics as $topic}}
					{template="row" group="global" app="forums" location="front" params="NULL, NULL, $topic, FALSE"}
				{{endforeach}}
			</ul>
		</div>
	{{endif}}
{{endif}}

 

comment_89612

хм. а вот сейчас что-то не так. все равно показывает время создания темы.

\IPS\DateTime::ts( $topic->mapped('date') )->html()

Потому что здесь время создания темы.

Должно быть 

\IPS\DateTime::ts( $topic->mapped('updated') )->html()

 

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.