SMFPortal.de

Willkommen !

Autor Thema: Untergeordnete Boards nicht anzeigen  (Gelesen 2955 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Ruth

  • Spezialist
  • ****
  • Beiträge: 331
Untergeordnete Boards nicht anzeigen
« am: 12. April 2013, 13:06:42 »
Hallo, miteinander!

Ich wollte mal testen, wieviel Platz wir im Forum sparen, wenn die untergeordneten Boards im Forum nicht mehr mit im Index angezeigt werden, sondern erst dann, wenn man sich in ein Board reinklickt.

Das habe ich bei den "Theme- und Layouteinstellungen" über die Funktion "Optionen zurückstellen" versucht, bei "Untergeordnete Boards auf jeder Seite im Themen-Index anzeigen".

Nun hat niemand mehr im Profil ein Häkchen an der entsprechenden Stelle bei den Layouteinstellungen, die untergeordneten Boards werden aber nach wie vor überall im Forum angezeigt.

Ich bin auch mit Test-Accounts durch und hab es sowohl in einem 1er (Classic) wie auch in einem 2er Forum (Curve) versucht, aber die untergeordneten Boards bleiben immer sichtbar.

Ich verstehe das nicht. Bei allen anderen Einstellungen, mit denen ich getestet habe, hat das zurückstellen der Optionen augenscheinlich richtig funktioniert.

TE

  • Gast
Re: Untergeordnete Boards nicht anzeigen
« Antwort #1 am: 12. April 2013, 20:12:38 »
Die Einstellung hat nichts damit zu tun, ob die Boards im BoardIndex (Startseite des SMF) angezeigt werden. Die Einstellung sagt konkret:
Untergeordnete Boards auf jeder Seite im Themen-Index anzeigen.
Das bezieht sich auf den MessageIndex, also die Tabelle mit der Übersicht der Themen nachdem du auf ein Board geklickt hast.. Hier ist der Haken dafür verantwortlich, ob die Tochter-Board nur auf der ersten Seite des MessageIndex angezeigt wird oder auch auf den Folgeseiten, wenn du dich durch ältere Themen klickst.

Ruth

  • Spezialist
  • ****
  • Beiträge: 331
Re: Untergeordnete Boards nicht anzeigen
« Antwort #2 am: 12. April 2013, 21:35:21 »
Ah! Okay...das hatte ich mißverstanden. Jetzt ist es klar. Danke für die Antwort.

Für unser Forum Nr. 1 wäre es praktisch, wenn die Titel der untergeordneten Boards nicht im Index zu lesen wären, da wir sehr viele Boards haben und die Bezeichnungen des übergeordneten Boards i.d.R. zur Erläuterung des Inhalts völlig auseichend sind. Die untergeordneten Boards sind nur eine Feinsortierung.

Könnte ich (in der Board.index.php?) entsprechende Änderungen vornehmen, damit die untergeordneten Boards künftig nur noch "auf zweiter Ebene" angezeigt werden?

TE

  • Gast
Re: Untergeordnete Boards nicht anzeigen
« Antwort #3 am: 13. April 2013, 08:32:03 »
ja, die lassen sich recht einfach aus dem BoardIndex entfernen. Datai ist diie BoardIndex.template.php. Die Schleife, die die einzelnen Boards anzeigt sieht je nach Theme etwa so aus:
Code
if (!empty($board['children']))
{
      hierzwischen steht noch einiges...
}

Ruth

  • Spezialist
  • ****
  • Beiträge: 331
Re: Untergeordnete Boards nicht anzeigen
« Antwort #4 am: 13. April 2013, 09:48:24 »
Danke, TE - das wäre ja prima, wenn das ginge.

Wir sind mit unserem Forum Nr. 1 derzeit noch in der 1er-Version, werden dieses Forum aber bald auch in eine 2er-Version "umpacken".

Dort werden entsprechende Veränderungen in der BoardIndex.template.php auch möglich sein, nehme ich an?

Derzeit schaut es so bei uns aus:

Code
// Show the "Child Boards: ". (there's a link_children but we're going to bold the new ones...)
if (!empty($board['children']))
{
// Sort the links into an array with new boards bold so it can be imploded.
$children = array();
/* Each child in each board's children has:
id, name, description, new (is it new?), topics (#), posts (#), href, link, and last_post. */
foreach ($board['children'] as $child)
$children[] = $child['new'] ? '<b>' . $child['link'] . '</b>' : $child['link'];

echo '
<i class="smalltext"><br />
', $txt['parent_boards'], ': ', implode(', ', $children), '</i>';
}


Hab grad über diese Stelle nachgegrübelt.  :\ Wenn jetzt hier etwas auskommentiert wird, woher "weiß" das System dann noch, dass es die untergeordneten Boards auf 2. Ebene schon noch anzeigen soll, nur im Index nicht mehr?
« Letzte Änderung: 13. April 2013, 09:51:07 von Ruth »

TE

  • Gast
Re: Untergeordnete Boards nicht anzeigen
« Antwort #5 am: 13. April 2013, 20:12:59 »
die Stelle ist genau richtig..

das Forum benutzt das BoardIndex.template.php zur Anzeige der Startseite deines Forums. Alle anderen Unterseiten bleiben davon unberührt..
Die ChildBoards werden ja z.B. auch in der Themen-Übersicht (MessageIndex.template.php) angezeigt, oberhalb der Themen. Das Ändern der BoardIndex.template.php hat keinerlei Einfluß auf die anderen Template-Dateien.

Ruth

  • Spezialist
  • ****
  • Beiträge: 331
Re: Untergeordnete Boards nicht anzeigen
« Antwort #6 am: 14. April 2013, 17:57:10 »
Gut...das wußte ich nicht, dass die einzelnen "Schichten" so völlig unabhängig voneinander bestimmt werden können. Ich dachte, das wurde sich alles gegenseitig bedingen.

Das mit dem Auskommentieren habe ich erst einmal ganz ohne Hilfe geschafft und das ist schon Jahre her und war wohl nur ein Glücksfall. ::) Ich habe immer noch nicht wirklich verstanden, wie man es macht.

In diesem Fall hier, wäre es so richtig?  :[

Code

// Show the "Child Boards: ". (there's a link_children but we're going to bold the new ones...)
  //   if (!empty($board['children']))
// {
// Sort the links into an array with new boards bold so it can be imploded.
// $children = array();
/* Each child in each board's children has:
id, name, description, new (is it new?), topics (#), posts (#), href, link, and last_post. */
// foreach ($board['children'] as $child)
// $children[] = $child['new'] ? '<b>' . $child['link'] . '</b>' : $child['link'];

// echo '
// <i class="smalltext"><br />
// ', $txt['parent_boards'], ': ', implode(', ', $children), '</i>';
// }


Ich hab keinen Schimmer, ob das so stimmen könnte...

Und die darauf folgende Passage bliebe ganz unverändert? Oder muß da z.B. vor dem echo' noch was hin? :\

Code
				echo '
</td>
<td class="windowbg" valign="middle" align="center" width="6%">', $board['topics'], '</td>
<td class="windowbg" valign="middle" align="center" width="6%">', $board['posts'], '</td>';

/* The board's and children's 'last_post's have:
time, timestamp (a number that represents the time.), id (of the post), topic (topic id.),
link, href, subject, start (where they should go for the first unread post.),
and member. (which has id, name, link, href, username in it.) */
echo '
<td class="windowbg2" valign="middle" width="22%"align="center">
<span class="smalltext">
', $board['last_post']['time'], '<br />
', $txt['smf88'], ' ', $board['last_post']['link'], '<br />
', $txt[525], ' ', $board['last_post']['member']['link'], '
</span>
</td>
</tr>';
}
}
}


Ruth

  • Spezialist
  • ****
  • Beiträge: 331
Re: Untergeordnete Boards nicht anzeigen
« Antwort #7 am: 16. April 2013, 08:49:59 »
Kann's  mir niemand sagen, ob das oben so richtig auskommentiert ist? :\


TE

  • Gast
Re: Untergeordnete Boards nicht anzeigen
« Antwort #8 am: 16. April 2013, 20:42:41 »
Kann's  mir niemand sagen, ob das oben so richtig auskommentiert ist? :\
Müsste passen, aber leg dir doch einfach ein Backup der BoardIndex.template.php an, dann ändere das Template und schau dir das Ergebnis an.. Wenn's nicht passt einfach die Datei mit der aus der Sicherung überschreiben.

Ruth

  • Spezialist
  • ****
  • Beiträge: 331
Re: Untergeordnete Boards nicht anzeigen
« Antwort #9 am: 17. April 2013, 00:55:55 »
Juhu! Es hat geklappt! Was bin ich froh. Schaut so alles viel besser aus und ist viel übersichtlicher geworden.

Vielen Dank für deine Hilfe, Thorsten!

moal

  • Spezialist
  • ****
  • Beiträge: 234
Re: Untergeordnete Boards nicht anzeigen
« Antwort #10 am: 09. März 2014, 19:26:37 »
Ich gleife das hier nochmal auf, denn ich versuche gerade das Selbe in 2.0.6 durchzuführen, bekomme es aber zum Verrecken nicht hin.
Kann mir da jemand auf die Sprünge helfen, wo ich da auskommentieren muss?

beste Grüße moal

Ruth

  • Spezialist
  • ****
  • Beiträge: 331
Re: Untergeordnete Boards nicht anzeigen
« Antwort #11 am: 09. März 2014, 21:29:42 »
Hab's grad in 2.0.7 probiert, moal...und es scheint da genauso zu funktionieren, diese Stelle hab ich komplett auskommentiert:

Code
// Show the "Child Boards: ". (there's a link_children but we're going to bold the new ones...)
//if (!empty($board['children']))
//{
// Sort the links into an array with new boards bold so it can be imploded.
//$children = array();
/* Each child in each board's children has:
id, name, description, new (is it new?), topics (#), posts (#), href, link, and last_post. */
//foreach ($board['children'] as $child)
//{
//if (!$child['is_redirect'])
//$child['link'] = '<a href="' . $child['href'] . '" ' . ($child['new'] ? 'class="new_posts" ' : '') . 'title="' . ($child['new'] ? $txt['new_posts'] : $txt['old_posts']) . ' (' . $txt['board_topics'] . ': ' . comma_format($child['topics']) . ', ' . $txt['posts'] . ': ' . comma_format($child['posts']) . ')">' . $child['name'] . ($child['new'] ? '</a> <a href="' . $scripturl . '?action=unread;board=' . $child['id'] . '" title="' . $txt['new_posts'] . ' (' . $txt['board_topics'] . ': ' . comma_format($child['topics']) . ', ' . $txt['posts'] . ': ' . comma_format($child['posts']) . ')"><img src="' . $settings['lang_images_url'] . '/new.gif" class="new_posts" alt="" />' : '') . '</a>';
//else
//$child['link'] = '<a href="' . $child['href'] . '" title="' . comma_format($child['posts']) . ' ' . $txt['redirects'] . '">' . $child['name'] . '</a>';

// Has it posts awaiting approval?
//if ($child['can_approve_posts'] && ($child['unapproved_posts'] || $child['unapproved_topics']))
//$child['link'] .= ' <a href="' . $scripturl . '?action=moderate;area=postmod;sa=' . ($child['unapproved_topics'] > 0 ? 'topics' : 'posts') . ';brd=' . $child['id'] . ';' . $context['session_var'] . '=' . $context['session_id'] . '" title="' . sprintf($txt['unapproved_posts'], $child['unapproved_topics'], $child['unapproved_posts']) . '" class="moderation_link">(!)</a>';

//$children[] = $child['new'] ? '<strong>' . $child['link'] . '</strong>' : $child['link'];
//}
//echo '
//<strong>', $txt['parent_boards'], '</strong>: ', implode(', ', $children), '
//';
//}


 

Internes

Nutzungsbedingungen Impressum

Wissenswertes

Hilfe Knowledge Base

Nützliches

Downloads Socialmedia