Skocz do zawartości

ROZWIĄZANY: Układ subfor jak na forum.invisionize.pl


Rekomendowane odpowiedzi

  • Manager
Opublikowano

Nawet nie zwróciłem na to uwagi. :)

Zrób testowo jak poniżej:

otwórz skin do edycji, przejdź do:

Strona główna >> boardIndexTemplate

Skopiuj całą zawartość gdzieś w bezpieczne miejsce jako kopia zapasowa na wypadek gdyby coś poszło nie tak.

Zastąp wszystko przez:

{parse js_module="board"}
{parse js_module="hooks"}
{parse variable="sidebar_enabled" default="$show_side_blocks"}
<script type='text/javascript'>
//<![CDATA[
ipb.global.boardMarkers = $H({
	'f_cat_unread': "{parse replacement="f_cat_read"}",
	'f_unread': "{parse replacement="f_read"}",
	'f_pass_unread': "{parse replacement="f_pass_read"}"
});
var markerURL = "{parse url="app=forums&module=ajax&section=markasread&secure_hash={$this->member->form_hash}&i=1&forumid=" base="public"}"; // Ajax URL so don't use &
//]]>
</script>
<if test="sideBarEnabled:|:$this->templateVars['sidebar_enabled']">
<a href='{parse url="app=forums&module=extras&section=toggle" base="public"}' id='close_sidebar'  class='sidebar_toggle rounded' <if test="sidebaropen:|:IPSCookie::get('hide_sidebar') != '1'">style='display: none'</if>><img src='{$this->settings['img_url']}/sidebar_close.png' alt='{$this->lang->words['sidebar_close']}' /></a>
<a href='{parse url="app=forums&module=extras&section=toggle" base="public"}' id='open_sidebar' class='sidebar_toggle rounded' <if test="sidebarclosed:|:IPSCookie::get('hide_sidebar') == '1'">style='display: none'</if>><img src='{$this->settings['img_url']}/sidebar_open.png' alt='{$this->lang->words['sidebar_open']}' /></a>
</if>
<h2 class='hide'>{$this->lang->words['board_index_title']}</h2>
<div id='board_index' class='clearfix'>
<if test="sideBarEnabled2:|:$this->templateVars['sidebar_enabled']">
	<div id='index_stats' class='right clearfix' <if test="sidebarclosed2:|:IPSCookie::get('hide_sidebar') == '1'">style='display: none'</if>>
		<foreach loop="side_blocks:$side_blocks as $block">
			{$block}
		</foreach>
	</div>
</if>


<div id='categories' class='<if test="nosidebar:|:IPSCookie::get('hide_sidebar') == '1' || !$this->templateVars['sidebar_enabled']">no_sidebar</if> clearfix'>
	<if test="latestNews:|:is_array($news_data) AND count($news_data)">
		<div id='latest_news' class='row2'><strong>{$this->lang->words['newslink']}</strong> <a href='{parse url="showtopic={$news_data['id']}" template="showtopic" seotitle="{$news_data['seo_title']}" base="public"}' title='{$this->lang->words['newslink']}'>{$news_data['title']}</a></div>
	</if>
<!-- CATS AND FORUMS -->
	<if test="cats_forums:|:is_array( $cat_data ) AND count( $cat_data )">
		<foreach loop="categories:$cat_data as $_data">
			<if test="cat_has_forums:|:is_array( $_data['forum_data'] ) AND count( $_data['forum_data'] )">
				{parse striping="catTable" classes="row1,row2"}
				<div class='category_block block_wrap'>
					<h3 id='category_{$_data['cat_data']['id']}' class='maintitle'><a class='toggle right' href='#' title='{$this->lang->words['toggle_cat']}'>{$this->lang->words['toggle_cat']}</a> <a href="{parse url="showforum={$_data['cat_data']['id']}" seotitle="{$_data['cat_data']['name_seo']}" template="showforum" base="public"}" title='{$this->lang->words['view_cat']}'>{$_data['cat_data']['name']}</a></h3>
					<table class='ipb_table' summary="{$this->lang->words['forums_in_cat']} '{$_data['cat_data']['name']}'">
						<tr class='header'>
							<th scope='col' class='col_c_icon'> </th>
							<th scope='col' class='col_c_forum'>{$this->lang->words['cat_name']}</th>
							<th scope='col' class='col_c_stats stats'>{$this->lang->words['stats']}</th>
							<th scope='col' class='col_c_post'>{$this->lang->words['last_post_info']}</th>
						</tr>
						<!-- / CAT HEADER -->
						<foreach loop="forums:$_data['forum_data'] as $forum_id => $forum_data">
							<if test="forumRedirect:|:$forum_data['redirect_on']">
								<tr class='{parse striping="catTable"} redirect_forum'>
									<td class='altrow'>{parse replacement="f_redirect"}</td>
									<td>
										<h4><a href="{parse url="showforum={$forum_data['id']}" seotitle="{$forum_data['name_seo']}" template="showforum" base="public"}" title='{$this->lang->words['go_to_forum']}'>{$forum_data['name']}</a></h4>
										<p class='desc'>{$forum_data['description']}</p>
									</td>
									<td colspan='2'>
										{$this->lang->words['rd_hits']}: {parse format_number="$forum_data['redirect_hits']"}
									</td>
								</tr>
							<else />
								<tr class='{parse striping="catTable"}'>
									<td class='altrow'>
										<!-- SKINNOTE: this URL is wrong, needs updating -->
										<if test="unreadicon:|:$forum_data['img_new_post'] != 'f_locked' && strstr( $forum_data['img_new_post'], 'unread' )">
											<a id='forum_img_{$forum_data['id']}' href="{parse url="app=forums&module=forums&section=markasread&marktype=forum&forumid={$forum_data['id']}&returntoforumid={$this->request['f']}&i=1" base="public"}" title="{$this->lang->words['bi_markread']}" class='forum_marker'>
												{parse replacement="{$forum_data['img_new_post']}"}
											</a>

											<script type='text/javascript'>
												ipb.global.registerMarker( "forum_img_{$forum_data['id']}", "{$forum_data['img_new_post']}", markerURL + "{$forum_data['id']}" );
											</script>
										<else />
											{parse replacement="{$forum_data['img_new_post']}"}
										</if>
									</td>
									<td>
										<h4><a href="{parse url="showforum={$forum_data['id']}" seotitle="{$forum_data['name_seo']}" template="showforum" base="public"}" title='{$this->lang->words['go_to_forum']}'>{$forum_data['name']}</a></h4>
										<p class='desc'>{$forum_data['description']}</p>

										<if test="showSubForums:|:$forum_data['show_subforums'] AND count( $forum_data['subforums'] ) AND $forum_data['show_subforums']">
											<h5 class='hide'>{$this->lang->words['subforums']}</h5>
											<ol class='subforums1'>
											<foreach loop="subforums:$forum_data['subforums'] as $__id => $__data">
											</ol>
											<ol class='subforums'>
												<if test="showSubForumsLit:|:$__data[3]"><li class='newposts'><else /><li></if><a href="{parse url="showforum={$__data[0]}" seotitle="{$__data[2]}" template="showforum" base="public"}" title='{$this->lang->words['go_to_forum']}'>{$__data[1]}</a></li>
											</foreach>
											</ol>
										</if>
										<!-- Skinnote: Clean up queued stuff -->
										<if test="hasQueuedAndCanSeeIcon:|:!empty($forum_data['_has_queued_and_can_see_icon'])">
											<em class='moderated'><a href='{parse url="showforum={$forum_data['id']}&modfilter=all" seotitle="{$forum_data['name_seo']}" template="showforum" base="public"}' title='{$this->lang->words['view_unapproved']}'>{parse expression="sprintf( $this->lang->words['f_queued'], $forum_data['queued_topics'], $forum_data['queued_posts'])"}</a></em>
										</if>
									</td>
									<td class='altrow stats'>
										<ul>
											<li>{$forum_data['topics']} {$this->lang->words['topics']}</li>
											<li>{$forum_data['posts']} {$this->lang->words['replies']}</li>
										</ul>
									</td>
									<td>
										<ul class='last_post'>
											<if test="hideLastInfo:|:$forum_data['hide_last_info']">
												<li>{$this->lang->words['f_protected']}</li>
											<else />
												<li><a href='{parse url="showtopic={$forum_data['last_id']}&view=getlastpost" base="public" template="showtopic" seotitle="{$forum_data['seo_last_title']}"}' title='{$this->lang->words['view_last_post']}'>{parse replacement="f_lastpost"}</a> <a href='{parse url="showtopic={$forum_data['last_id']}&view=getlastpost" base="public" template="showtopic" seotitle="{$forum_data['seo_last_title']}"}' title='{$this->lang->words['view_last_post']}'>{$forum_data['last_post']}</a></li>
												<li><strong>{$this->lang->words['in']}</strong> {$forum_data['last_topic_title']}</li>
												<li>
													<strong>{$this->lang->words['by']}</strong> 
													<if test="lastPosterName:|:isset($forum_data['last_poster_name']) AND $forum_data['last_poster_name']">
														<if test="lastPosterID:|:$forum_data['last_poster_id']">
															<a href='{parse url="showuser={$forum_data['last_poster_id']}" template="showuser" seotitle="{$forum_data['seo_last_name']}" base="public"}' title='{$this->lang->words['view_profile']}'>{$forum_data['last_poster_name']}</a>{parse template="user_popup" group="global" params="$forum_data['last_poster_id'], $forum_data['seo_last_name']"}
														<else />
															{$this->settings['guest_name_pre']}{$forum_data['last_poster_name']}{$this->settings['guest_name_suf']}
														</if>
													<else />
														{$this->lang->words['f_none']}
													</if>
												</li>
											</if>
										</ul>
									</td>
								</tr>
							</if>
						</foreach>
					</table>
				</div>
			</if>
		</foreach>
	</if>
</div>
</div>
<ul id='stat_links' class='filter_bar rounded'>
<li><a href="{parse url="app=core&module=search&do=active" base="public"}" title="{$this->lang->words['today_active_cont']}">{$this->lang->words['new_active_cont']}</a></li>
<li><a href="{parse url="app=forums&module=extras&section=stats&do=leaders" base="public"}" title="{$this->lang->words['sm_forum_leaders_title']}">{$this->lang->words['sm_forum_leaders']}</a></li>
<li><a href="{parse url="app=forums&module=extras&section=stats" base="public"}" title="{$this->lang->words['sm_all_posters_title']}">{$this->lang->words['sm_today_posters']}</a></li>
<li><a href="{parse url="app=members&section=view&module=list&max_results=20&sort_key=posts&sort_order=desc&filter=ALL" base="public"}" title="{$this->lang->words['sm_overall_posters_title']}">{$this->lang->words['sm_overall_posters']}</a></li>
</ul>
<div id='board_statistics' class='statistics general_box clearfix'>
<if test="showTotals:|:$this->settings['show_totals']">
	<div id='stats'>
		<h2>{$this->lang->words['board_stats']}</h2>
		<dl> 
			<dt>{$this->lang->words['total_posts']}</dt>
			<dd>{$stats['info']['total_posts']}</dd>
			<dt>{$this->lang->words['total_members']}</dt>
			<dd>{$stats['info']['mem_count']}</dd>
			<dt>{$this->lang->words['newest_member']}</dt>
			<dd><a href='{parse url="{$stats['info']['last_mem_link']}" template="showuser" seotitle="%%{$stats['info']['last_mem_name']}%%"}' title='{$this->lang->words['view_profile']}'>{$stats['info']['last_mem_name']}</a>{parse template="user_popup" group="global" params="$stats['info']['last_mem_id']"} </dd>
			<dt>{$this->lang->words['online_at_once']}</dt>
			<dd>{$stats['info']['most_online']}<br /><span class='extra'>{$this->lang->words['on']} {$stats['info']['most_time']}</span></dd>
		</dl>
	</div>
</if>
<if test="showActive:|:$this->settings['show_active']">
	<div id='active_users' class='stats_list'>
		<h2>
			{$stats['TOTAL']} {$this->lang->words['active_users_text']} <span>{$this->lang->words['active_users']}</span><br />
			<span class='desc'>{$stats['MEMBERS']} {$this->lang->words['members']}, {$stats['GUESTS']} {$this->lang->words['guests']}, {$stats['ANON']} {$this->lang->words['anon_users']} | {$this->lang->words['show_by']}: <a href='{parse url="app=members&module=online&sort_order=desc" base="public"}'>{$this->lang->words['oul_click']}</a> {$this->lang->words['or']} <a href='{parse url="app=members&module=online&sort_key=name&sort_order=asc&show_mem=reg" base="public"}'>{$this->lang->words['oul_name']}</a></span>
		</h2>
		<if test="activeNames:|:count($stats['NAMES'])">
			<p>
				<span class='name'>{parse expression="implode( ",</span> <span class='name'>", $stats['NAMES'] )"}</span>					
			</p>
		</if>
	</div>
</if>
<if test="calendarEventsOuter:|:$calendar_events">
<div id='cal_events' class='stats_list'>
	<h2>{$this->lang->words['upcoming_events']}</h2>
	<if test="calendarEventsInner:|:is_array( $calendar_events )">
		<ul>
			<li>{parse expression="implode( ",</li><li>", $calendar_events )"}</li>
		</ul>
	<else />
		<p>{$calendar_events}</p>
	</if>
</div>
</if>

<if test="birthdays:|:$birthdays !== FALSE AND is_array( $birthdays['users'] ) AND count( $birthdays['users'] )">
	<div id='cal_bdays' class='stats_list'>
		<h2>{$birthdays['count']} {$this->lang->words['birthdays_today']}</h2>
		<p>
			<span class='name'>{parse expression="implode( ",</span> <span class='name'>", $birthdays['users'] )"}</span>					
		</p>
	</div>
<else />
	<if test="showBirthdaysAlways:|:$this->settings['show_birthdays'] AND !$this->settings['autohide_bday']">
		<div id='cal_bdays' class='stats_list'>
			<h2>0 {$this->lang->words['birthdays_today']}</h2>
			<p>{$this->lang->words['no_birth_users']}</p>
		</div>
	</if>
</if>

</div>
<if test="autodst:|:$this->memberData['members_auto_dst'] == 1 AND $this->settings['time_dst_auto_correction']">
<script type='text/javascript'>
ipb.vars['dst_on']	= parseInt("{$this->memberData['dst_in_use']}");

ipb.board.checkDST();
</script>
</if>

Nie testowałem tego, wziąłem kod z tego skina.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano

Zdaje się, że do serii 2.x.x to chyba była modyfikacja dzięki której można było taki efekt uzyskać. Zapewne do 3.x.x jeszcze nie została zrobiona.

  • Manager
Opublikowano

Dziwna sprawa. No to spróbuj wyłuskać z tego kodu fragmenty odpowiedzialne za to. Zaznaczam ponownie: nie testowałem, nie wiem czy działa, czy to ten bit, ale spróbować nie zaszkodzi.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

  • 3 tygodnie później...
Opublikowano

Bardzo chciałbym ułożyć subfora tak jak jest na tym forum, forum.invisionize.pl

Ja także byłbym zainteresowany :)

Dziwna sprawa. No to spróbuj wyłuskać z tego kodu fragmenty odpowiedzialne za to. Zaznaczam ponownie: nie testowałem, nie wiem czy działa, czy to ten bit, ale spróbować nie zaszkodzi.

Wyciągnąłem fragment kodu - zdaje się, że:

<ol class='subforums'>
											<foreach loop="subforums:$forum_data['subforums'] as $__id => $__data">
												<if test="showSubForumsLit:|:$__data[3]"><li class='newposts'><else /><li></if><a href="{parse url="showforum={$__data[0]}" seotitle="{$__data[2]}" template="showforum" base="public"}" title='{$this->lang->words['go_to_forum']}'>{$__data[1]}</a></li>
											</foreach>
											</ol>

trzeba zamienić na:

<ol class='subforums1'>
                                                                                               <foreach loop="subforums:$forum_data['subforums'] as $__id => $__data">
                                                                                               </ol>
                                                                                               <ol class='subforums'>

                                                                                                       <if test="showSubForumsLit:|:$__data[3]"><li class='newposts'><else /><li></if><a href="{parse url="showforum={$__data[0]}" seotitle="{$__data[2]}" template="showforum" base="public"}" title='{$this->lang->words['go_to_forum']}'>{$__data[1]}</a></li>
                                                                                               </foreach>
                                                                                               </ol>

Jest tam jam jednak jakaś nowa klasa "subforums1" i przydałby się jej opis. Tak czy owak u mnie cały układ po tej przeróbce się rozsypuje :)

  • Manager
Opublikowano

Eurycide: też to dzisiaj patrzyłem i też to wycinałem. :)

A ten kod CSS to:

        .subforums { 
               float:left; 
               width:50%;

}

       .subforums1 { 
               width:50%;          

}

Podałem razem z oryginalnym, testuj. :)

Oczywiście kod do ACP do pliku CSS ipb_styles.css.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano

No teraz pięknie działa :)

Podsumowując:

Strona główna >> boardIndexTemplate

szukamy:

<ol class='subforums'>
											<foreach loop="subforums:$forum_data['subforums'] as $__id => $__data">
												<if test="showSubForumsLit:|:$__data[3]"><li class='newposts'><else /><li></if><a href="{parse url="showforum={$__data[0]}" seotitle="{$__data[2]}" template="showforum" base="public"}" title='{$this->lang->words['go_to_forum']}'>{$__data[1]}</a></li>
											</foreach>
											</ol>

zamieniamy na:

<ol class='subforums1'>
                                                                                               <foreach loop="subforums:$forum_data['subforums'] as $__id => $__data">
                                                                                               </ol>
                                                                                               <ol class='subforums'>

                                                                                                       <if test="showSubForumsLit:|:$__data[3]"><li class='newposts'><else /><li></if><a href="{parse url="showforum={$__data[0]}" seotitle="{$__data[2]}" template="showforum" base="public"}" title='{$this->lang->words['go_to_forum']}'>{$__data[1]}</a></li>
                                                                                               </foreach>
                                                                                               </ol>

oraz w stylach ipb_styles.css dopisujemy nową klasę:

table.ipb_table ol.subforums1 {

width: 50%;

}

a istniejącą klasę table.ipb_table ol.subforums opisujemy jako:

table.ipb_table ol.subforums {

margin-top: 3px;

float: left;

width: 50%;

}

margin-top: 3px - pozwala regulować odstępy pomiędzy subforami w pionie.

  • Manager
Opublikowano

Problem ROZWIĄZANY. Jeśli są jakiekolwiek wątpliwości, pytania proszę o założenie nowego tematu.

Wszelkie uzasadnione reklamacje/pretensje/sugestie/rady przyjmuje ekipa forum.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.