Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
9IPOCTb

Закрепление тем в боковом блоке

Recommended Posts

Здравствуйте, уважаемые форумчане! Подскажите как сделать закрепление тем в боковом блоке "Последние темы", пример: http://prnt.sc/eid7j2

Заранее спасибо!

Share this post


Link to post
Share on other sites

либо, может кто сможет реализовать подобное за отдельную плату?

Share this post


Link to post
Share on other sites

Что за блок "Последние темы"? Этих хуков пруд пруди.

  • Upvote 1

Share this post


Link to post
Share on other sites

хуков то пруд-пруди, но не нашел такого, который обладает таким функционалом

Share this post


Link to post
Share on other sites

Вам-то для какого надо? Или предлагаете для всех имеющихся написать решение?

  • Upvote 1

Share this post


Link to post
Share on other sites

по сути без разницы.

можно и для стандартного хука, если не ошибаюсь там именно он представлен

Share this post


Link to post
Share on other sites

можно и для стандартного хука

applications/forums/sources/classes/forums/class_forums.php

Найти

			$_topics	= array_slice( $topicIDs, 0, $topicCount * 2 );

Ниже добавить

			$topics_rows = array();
		$pinned_topics = array();
		$pinned_tids = array(1,2,3,4,5); // Перечисляем через запятую айдишники закрепленных тем
		$_topics	= array_unique(array_merge($_topics, $pinned_tids));

Найти

					$topics_rows[ $time ] = IPSMember::buildDisplayData( $r );

Заменить на

					if (in_array($r['tid'], $pinned_tids))
				{
					$pinned_topics[$time] = IPSMember::buildDisplayData( $r );
				}
				else
				{
					$topics_rows[$time] = IPSMember::buildDisplayData( $r );
				}

Найти

					$topics_rows = array_slice( $topics_rows, 0, $topicCount );
			}

Ниже добавить

				$topics_rows = array_merge($pinned_topics, $topics_rows);

в АЦ в шаблоне hookRecentTopics можете проверять закреплена тема или нет

<if test="in_array($r['tid'], array(1,2,3,4,5))">Закреплено</if>

  • Upvote 3

Share this post


Link to post
Share on other sites

отлично! Спасибо большое! Осталось мелочь, как добавить перед закрепленными темами - теги как на скрине?

Share this post


Link to post
Share on other sites

Осталось мелочь, как добавить перед закрепленными темами - теги как на скрине?

Я же написал

в АЦ в шаблоне hookRecentTopics можете проверять закреплена тема или нет

Проверяйте айдишник темы и добавляйте что нужно.

  • Upvote 1

Share this post


Link to post
Share on other sites
Проверяйте айдишник темы и добавляйте что нужно.

добавил в шаблоне хука в самый верх, я правильно сделал

 

 

 

<if test="in_array($r['tid'], array(1,2,3))">Закреплено</if>
<if test="recenttopics:|:is_array( $topics ) && count( $topics )">
<div class='ipsSideBlock clearfix'>
<h3>{$this->lang->words['recently_added_topics']}</h3>
<div class='_sbcollapsable'>
	<ul class='ipsList_withminiphoto'>
	<foreach loop="topics_hook:$topics as $r">
	<li class='clearfix'>
		{parse template="userSmallPhoto" group="global" params="$r"}
		<div class='list_content'>
			<a href="{parse url="showtopic={$r['tid']}" base="public" template="showtopic" seotitle="{$r['title_seo']}"}" rel='bookmark' class='ipsType_small' title='{parse expression="strip_tags($r['topic_title'])"} {$this->lang->words['topic_started_on']} {parse date="$r['start_date']" format="LONG"}'>{$r['topic_title']}</a>
			<p class='desc ipsType_smaller'>
				<if test="$r['members_display_name']">{parse template="userHoverCard" group="global" params="$r"}<else />{$this->settings['guest_name_pre']}{$r['starter_name']}{$this->settings['guest_name_suf']}</if>
				- {parse date="$r['start_date']" format="short"}
			</p>
		</div>
	</li>
	</foreach>
	</ul>
</div>
</div>
</if>

 

 

 

это правильно? или я что-то не так вставил?

Share this post


Link to post
Share on other sites

и еще, как я понял, теги будут одного цвета, можно к каждой теме приписать свой отдельный тег с цветом?

Share this post


Link to post
Share on other sites

это правильно?

Нет. Перед добавлением нужно определить место.

Добавить можно перед

<a href="{parse url="showtopic={$r['tid']}"

и еще, как я понял, теги будут одного цвета, можно к каждой теме приписать свой отдельный тег с цветом?

Для нескольких

<if test="in_array($r['tid'], array(1,2))">Тег для тем 1 и 2</if>

Для одной

<if test="$r['tid'] == 3">Тег для темы 3</if>

И т.д.

  • Upvote 1

Share this post


Link to post
Share on other sites

Отлично! спасибо большое! низкий вам поклон! :rolleyes:

Share this post


Link to post
Share on other sites

еще небольшой вопрос появился, пытаюсь выделить тег цветом, приписав к нему див, в общем виде выглядит так код:

<div class="test"><if test="$r['tid'] == 3">Тег для темы 3</if></div>

 

но на форуме происходит перекидывание на вторую строчку:

 

Тег для темы 3
название темы - от - дата

 

а хочется сделать в одну строчку:

 

Тег для темы 3 - название темы - от - дата

Share this post


Link to post
Share on other sites

Не используйте блочные элементы

<if test="$r['tid'] == 3"><span class='ipsBadge ipsBadge_green'>Тег для темы 3</span></if>

  • Upvote 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...